패키지flash.net
클래스public class URLStream
상속URLStream Inheritance EventDispatcher Inheritance Object
구현 IDataInput

언어 버전: ActionScript 3.0
런타임 버전: AIR 1.0 Flash Player 9

URLStream 클래스는 URL 다운로드에 대한 낮은 레벨의 액세스를 제공합니다. 데이터는 다운로드되는 즉시 응용 프로그램 코드에서 사용할 수 있으며 URLLoader에서처럼 전체 파일이 완전히 다운로드될 때까지 기다릴 필요가 없습니다. URLStream 클래스를 사용하면 다운로드가 완료되기 전에 스트림을 닫을 수도 있습니다. 다운로드된 파일의 내용은 원시 이진 데이터 형태로 사용할 수 있습니다.

URLStream의 읽기 작업은 비차단 방식입니다. 따라서 데이터를 읽기 전에 bytesAvailable 속성을 사용하여 충분한 데이터가 있는지 확인해야 합니다. 충분한 데이터가 없는 경우 EOFError 예외가 발생합니다.

모든 이진 데이터는 기본적으로 최상위 바이트가 우선하는 Big Endian 형식으로 인코딩됩니다.

URLStream 클래스를 통한 URL 다운로드에 적용되는 보안 규칙은 URLLoader 객체에 적용되는 규칙과 동일합니다. 필요할 경우 정책 파일을 다운로드할 수 있습니다. 로컬 파일 보안 규칙이 적용되며 필요할 경우 보안 경고가 표시됩니다.

예제 보기

참고 사항

URLLoader
URLRequest


Public 속성
 속성다음에 의해 정의됨
  bytesAvailable : uint
[읽기 전용] 입력 버퍼에서 읽을 수 있는 데이터 바이트 수를 반환합니다.
URLStream
  connected : Boolean
[읽기 전용] 이 URLStream 객체가 현재 연결된 상태인지 여부를 나타냅니다.
URLStream
 Inheritedconstructor : Object
지정된 객체 인스턴스의 클래스 객체 또는 생성자 함수에 대한 참조입니다.
Object
  endian : String
데이터의 바이트 순서를 나타냅니다.
URLStream
  objectEncoding : uint
객체를 쓰거나 읽을 때 사용되는 AMF의 버전을 제어합니다.
URLStream
 Inheritedprototype : Object
[정적] 클래스 또는 함수 객체의 프로토타입 객체에 대한 참조입니다.
Object
Public 메서드
 메서드다음에 의해 정의됨
 Inherited
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
리스너에서 이벤트 알림을 받을 수 있도록 EventDispatcher 객체에 이벤트 리스너 객체를 등록합니다.
EventDispatcher
  
스트림을 즉시 닫고 다운로드 작업을 취소합니다.
URLStream
 Inherited
이벤트를 이벤트 흐름으로 전달합니다.
EventDispatcher
 Inherited
EventDispatcher 객체에 특정 유형의 이벤트에 대한 리스너가 등록되어 있는지 여부를 확인합니다.
EventDispatcher
 Inherited
지정된 속성이 객체에 정의되어 있는지 여부를 나타냅니다.
Object
 Inherited
Object 클래스의 인스턴스가 매개 변수로 지정된 객체의 프로토타입 체인에 있는지 여부를 나타냅니다.
Object
  
요청 매개 변수에 정의된 URL을 다운로드하기 시작합니다.
URLStream
 Inherited
지정된 속성이 존재하고 열거 가능한지 여부를 나타냅니다.
Object
  
스트림에서 부울 값을 읽습니다.
URLStream
  
스트림에서 부호 있는 바이트를 읽습니다.
URLStream
  
readBytes(bytes:ByteArray, offset:uint = 0, length:uint = 0):void
스트림에서 길이 바이트의 데이터를 읽습니다.
URLStream
  
스트림에서 IEEE 754 배정밀도 부동 소수점 숫자를 읽습니다.
URLStream
  
스트림에서 IEEE 754 단정밀도 부동 소수점 숫자를 읽습니다.
URLStream
  
스트림에서 부호 있는 32비트 정수를 읽습니다.
URLStream
  
readMultiByte(length:uint, charSet:String):String
지정된 문자 세트를 사용하여 바이트 스트림에서 지정된 길이의 멀티바이트 문자열을 읽습니다.
URLStream
  
소켓에서 AMF로 인코딩된 객체를 읽습니다.
URLStream
  
스트림에서 부호 있는 16비트 정수를 읽습니다.
URLStream
  
스트림에서 부호 없는 바이트를 읽습니다.
URLStream
  
스트림에서 부호 없는 32비트 정수를 읽습니다.
URLStream
  
스트림에서 부호 없는 16비트 정수를 읽습니다.
URLStream
  
스트림으로부터 UTF-8 문자열을 읽습니다.
URLStream
  
스트림에서 길이 UTF-8 바이트 시퀀스를 읽고 문자열을 반환합니다.
URLStream
 Inherited
removeEventListener(type:String, listener:Function, useCapture:Boolean = false):void
EventDispatcher 객체에서 리스너를 제거합니다.
EventDispatcher
 Inherited
루프 작업에서 동적 속성을 사용할 수 있는지 여부를 설정합니다.
Object
 Inherited
지정된 객체의 문자열 표현을 반환합니다.
Object
 Inherited
지정된 객체의 프리미티브 값을 반환합니다.
Object
 Inherited
이 EventDispatcher 객체 또는 조상 객체에 지정한 이벤트 유형에 대한 이벤트 리스너가 등록되어 있는지 여부를 확인합니다.
EventDispatcher
이벤트
 이벤트 요약 다음에 의해 정의됨
 Inherited[브로드캐스트 이벤트] Flash Player 또는 AIR 응용 프로그램이 운영 체제 포커스를 얻어 활성화될 때 전달됩니다.EventDispatcher
  데이터가 성공적으로 로드되면 전달됩니다.URLStream
 Inherited[브로드캐스트 이벤트] Flash Player 또는 AIR 응용 프로그램이 운영 체제 포커스를 잃고 비활성화될 때 전달됩니다.EventDispatcher
  URLStream.load() 메서드 호출로 HTTP를 통해 데이터 액세스를 시도하고 Adobe AIR에서 요청에 대한 상태 코드를 감지 및 반환할 수 있을 때 전달됩니다.URLStream
  URLStream.load() 호출로 HTTP를 통해 데이터 액세스를 시도하고 Flash Player 또는 Adobe AIR에서 요청에 대한 상태 코드를 감지 및 반환할 수 있을 때 전달됩니다.URLStream
  로드 작업을 실패하게 만드는 입력/출력 오류가 발생할 때 전달됩니다.URLStream
  로드 작업이 시작될 때 전달됩니다.URLStream
  다운로드 작업이 진행되어 데이터가 수신될 때 전달됩니다.URLStream
  URLStream.load() 호출로 보안 샌드박스 외부의 서버에서 데이터 로드를 시도하면 전달됩니다.URLStream
속성 정보
bytesAvailable속성
bytesAvailable:uint  [읽기 전용]

언어 버전: ActionScript 3.0
런타임 버전: AIR 1.0 Flash Player 9

입력 버퍼에서 읽을 수 있는 데이터 바이트 수를 반환합니다. read 메서드 중 하나를 사용하여 읽기 전에 충분한 데이터가 있는지 확인하도록 bytesAvailable 속성을 호출하는 코드를 포함해야 합니다.



구현
    public function get bytesAvailable():uint
connected속성 
connected:Boolean  [읽기 전용]

언어 버전: ActionScript 3.0
런타임 버전: AIR 1.0 Flash Player 9

이 URLStream 객체가 현재 연결된 상태인지 여부를 나타냅니다. 이 속성에 대한 호출은 URLStream 객체가 연결되어 있으면 true 값을, 그렇지 않으면 false 값을 반환합니다.



구현
    public function get connected():Boolean
endian속성 
endian:String  [읽기/쓰기]

언어 버전: ActionScript 3.0
런타임 버전: AIR 1.0 Flash Player 9

데이터의 바이트 순서를 나타냅니다. 사용 가능한 값은 Endian.BIG_ENDIAN 또는 Endian.LITTLE_ENDIAN입니다.

기본값은 Endian.BIG_ENDIAN.



구현
    public function get endian():String
    public function set endian(value:String):void

참고 사항

objectEncoding속성 
objectEncoding:uint  [읽기/쓰기]

언어 버전: ActionScript 3.0
런타임 버전: AIR 1.0 Flash Player 9

객체를 쓰거나 읽을 때 사용되는 AMF의 버전을 제어합니다.



구현
    public function get objectEncoding():uint
    public function set objectEncoding(value:uint):void

참고 사항

메서드 정보
close()메서드
public function close():void

언어 버전: ActionScript 3.0
런타임 버전: AIR 1.0 Flash Player 9

스트림을 즉시 닫고 다운로드 작업을 취소합니다. close() 메서드를 호출한 후에는 스트림에서 데이터를 읽을 수 없습니다.


오류
IOError — 스트림을 닫을 수 없거나, 스트림이 열려 있지 않습니다.
load()메서드 
public function load(request:URLRequest):void

언어 버전: ActionScript 3.0
런타임 버전: AIR 1.0 Flash Player 9

request 매개 변수에 정의된 URL을 다운로드하기 시작합니다.

참고: 로드되는 파일에 ASCII가 아닌 문자(영어가 아닌 다른 언어에서 사용)가 포함되어 있는 경우 UTF-8 또는 UTF-16과 같은 유니코드 인코딩을 사용하여 파일을 저장하는 것이 좋습니다. ASCII는 유니코드 형식이 아닙니다.

로드 작업 시작 즉시 실패할 경우 실패를 알리는 IOError 또는 SecurityError(로컬 파일 보안 오류 포함) 예외가 발생합니다. 그렇지 않으면, URL 다운로드에서 성공적으로 다운로드를 시작한 경우 open 이벤트가 전달되거나 오류가 발생한 경우 오류 이벤트가 전달됩니다.

기본적으로 호출하는 SWF 파일과 로드하는 URL은 같은 도메인에 있어야 합니다. 예를 들어 www.adobe.com에 있는 SWF 파일은 같은 도메인인 www.adobe.com에 있는 소스에서만 데이터를 로드할 수 있습니다. 다른 도메인에서 데이터를 로드하려면 해당 데이터를 호스팅하는 서버에 URL 정책 파일을 배치합니다.

Flash Player에서는 일반적으로 예약된 포트에 연결할 수 없습니다. 차단된 포트의 전체 목록은 보안 장(ActionScript 3.0 프로그래밍 설명서)에서 "네트워킹 API 제한"을 참조하십시오.

Flash Player에서는 SWF 내용을 포함하는 HTML 페이지에서 objectembed 태그의 allowNetworking 매개 변수를 설정하여 SWF 파일에서 이 메서드를 사용하지 못하도록 할 수 있습니다.

Flash Player 10 이상 및 AIR 1.5 이상 버전에서는 multipart Content-Type(예: "multipart/form-data")을 사용하고 POST 본문 내 "content-disposition" 헤더에 "filename" 매개 변수를 지정하여 업로드를 처리하는 경우 POST 작업이 업로드에 적용되는 보안 규칙의 영향을 받을 수 있습니다.

또한 multipart Content-Type의 경우 구문이 RFC2046 표준에 따라 유효해야 합니다. 구문이 유효하지 않은 경우 POST 작업은 업로드에 적용되는 보안 규칙의 영향을 받을 수 있습니다.

이러한 규칙은 비 응용 프로그램 샌드박스의 AIR 내용에도 적용됩니다. 하지만 Adobe AIR에서 응용 프로그램 샌드박스의 내용 즉 AIR 응용 프로그램과 함께 설치된 내용은 이러한 보안 제한의 제약을 받지 않습니다.

보안과 관련된 자세한 내용은 다음을 참조하십시오.

AIR에서 URLRequest 객체를 httpResponse 상태 이벤트에 대해 등록할 수 있습니다. httpStatus 이벤트와는 달리, httpResponseStatus 이벤트는 응답 데이터 이전에 전달됩니다. 또한 httpResponseStatus 이벤트에는 responseHeadersresponseURL 속성(httpStatus 이벤트에 대해 정의되어 있지 않음) 값이 포함되어 있습니다. httpResponseStatus 이벤트(있는 경우)는 complete 또는 error 이벤트 발생 전에 추가로 전송됩니다.

httpResponseStatus 이벤트 리스너가 있는 경우 응답 메시지의 본문이 항상 전달됩니다. 또한 HTTP 상태 코드에서 응답하면 항상 complete 이벤트가 발생합니다. 이는 HTTP 응답 상태 코드가 성공하거나 오류이거나에 관계없이 항상 적용됩니다.

AIR에서 만약 httpResponseStatus 이벤트 리스너가 없으면 SWF 버전에 따라 동작이 달라집니다.

매개 변수

request:URLRequest — 다운로드할 URL을 지정하는 URLRequest 객체입니다. 이 매개 변수의 값 또는 전달된 URLRequest 객체의 URLRequest.url 속성의 값이 null인 경우 응용 프로그램에서 null 포인터 오류가 발생합니다.


이벤트
complete:Event — 데이터가 성공적으로 로드되면 전달됩니다. httpResponseStatus 이벤트 리스너가 있으면 HTTP 응답 상태 코드에서 성공 또는 오류를 나타내는지에 관계없이 URLRequest 객체에서 complete 이벤트를 전달합니다.
 
httpStatus:HTTPStatusEvent — HTTP에 의해 액세스되고 현재의 환경이 상태 코드 수신을 지원하는 경우 complete 또는 error 이벤트 외에도 이러한 이벤트를 수신할 수 있습니다.
 
httpResponseStatus:HTTPStatusEventload() 메서드 호출로 HTTP를 통해 데이터 액세스를 시도하고 Adobe AIR에서 요청에 대한 상태 코드를 감지 및 반환할 수 있을 때 전달됩니다.
 
ioError:IOErrorEvent — 로드 작업을 완료할 수 없습니다.
 
open:Event — 로드 작업이 시작될 때 전달됩니다.
 
securityError:SecurityErrorEvent — 로드 작업에서 호출자의 보안 샌드박스 외부에 있는 서버의 데이터를 검색하려고 시도했습니다. 이 오류는 해당 서버의 정책 파일을 사용하여 해결할 수 있습니다.

오류
ArgumentError URLRequest.requestHeader 객체는 금지된 특정 HTTP 요청 헤더를 포함할 수 없습니다. 자세한 내용은 URLRequestHeader 클래스 설명을 참조하십시오.
 
MemoryError — 이 오류는 다음과 같은 이유로 발생할 수 있습니다.
  1. Flash Player 또는 Adobe AIR에서 URLRequest.data 매개 변수를 UTF8에서 MBCS로 변환할 수 없습니다. load()에 전달된 URLRequest 객체가 GET 작업을 수행하도록 설정되고 System.useCodePagetrue로 설정된 경우 이 오류가 발생합니다.
  2. Flash Player 또는 Adobe AIR에서 POST 데이터를 위한 메모리를 할당할 수 없습니다. 로드하기 위해 전달된 URLRequest 객체가 POST 작업을 수행하도록 설정된 경우 이 오류가 발생합니다.
 
SecurityError — 신뢰할 수 없는 로컬 SWF 파일은 인터넷 통신이 불가능합니다. 이 SWF 파일을 네트워킹 가능한 로컬 파일(local-with-networking) 또는 신뢰할 수 있는 파일로 다시 규정하면 이 오류를 해결할 수 있습니다.
 
SecurityError — 일반적으로 예약된 포트에 연결하려고 했습니다. 차단된 포트의 전체 목록은 ActionScript 3.0 프로그래밍 설명서의 보안 장에서 "네트워킹 API 제한"을 참조하십시오.
readBoolean()메서드 
public function readBoolean():Boolean

언어 버전: ActionScript 3.0
런타임 버전: AIR 1.0 Flash Player 9

스트림에서 부울 값을 읽습니다. 단일 바이트를 읽고 해당 바이트가 0이 아니면 true를, 그렇지 않으면 false를 반환합니다.

반환값
Boolean — 바이트가 0이 아니면 True가 반환되고, 그렇지 않으면 False가 반환됩니다.

오류
EOFError 읽을 수 있는 데이터가 부족합니다. 로컬 SWF 파일이 보안 경고를 트리거하면 Flash Player에서는 ActionScript에서 URLStream 데이터를 사용하지 못하도록 합니다. 이 경우에는 데이터가 수신되어도 bytesAvailable 속성이 0을 반환하며 모든 읽기 메서드에서 EOFError 예외가 발생합니다.
 
IOError — 스트림에서 입출력 오류가 발생했거나, 스트림이 열려 있지 않습니다.
readByte()메서드 
public function readByte():int

언어 버전: ActionScript 3.0
런타임 버전: AIR 1.0 Flash Player 9

스트림에서 부호 있는 바이트를 읽습니다.

반환된 값의 범위는 -128에서 127 사이입니다.

반환값
int — 범위 값은 -128...127입니다.

오류
EOFError 읽을 수 있는 데이터가 부족합니다. 로컬 SWF 파일이 보안 경고를 트리거하면 Flash Player에서는 ActionScript에서 URLStream 데이터를 사용하지 못하도록 합니다. 이 경우에는 데이터가 수신되어도 bytesAvailable 속성이 0을 반환하며 모든 읽기 메서드에서 EOFError 예외가 발생합니다.
 
IOError — 스트림에서 입출력 오류가 발생했거나, 스트림이 열려 있지 않습니다.
readBytes()메서드 
public function readBytes(bytes:ByteArray, offset:uint = 0, length:uint = 0):void

언어 버전: ActionScript 3.0
런타임 버전: AIR 1.0 Flash Player 9

스트림에서 length 바이트의 데이터를 읽습니다. ByteArray 객체에 대한 offset 바이트에서 시작하여 bytes로 지정된 ByteArray 객체로 바이트를 읽어들입니다.

매개 변수

bytes:ByteArray — 데이터를 읽어들일 ByteArray 객체입니다.
 
offset:uint (default = 0) — 데이터 읽기를 시작할 bytes에 대한 오프셋입니다. 기본값은 0입니다.
 
length:uint (default = 0) — 읽을 바이트 수입니다. 기본값인 0을 사용하면 읽을 수 있는 데이터를 모두 읽습니다.


오류
EOFError 읽을 수 있는 데이터가 부족합니다. 로컬 SWF 파일이 보안 경고를 트리거하면 Flash Player에서는 ActionScript에서 URLStream 데이터를 사용하지 못하도록 합니다. 이 경우에는 데이터가 수신되어도 bytesAvailable 속성이 0을 반환하며 모든 읽기 메서드에서 EOFError 예외가 발생합니다.
 
IOError — 스트림에서 입출력 오류가 발생했거나, 스트림이 열려 있지 않습니다.
readDouble()메서드 
public function readDouble():Number

언어 버전: ActionScript 3.0
런타임 버전: AIR 1.0 Flash Player 9

스트림에서 IEEE 754 배정밀도 부동 소수점 숫자를 읽습니다.

반환값
Number — 스트림의 IEEE 754 배정밀도 부동 소수점 숫자입니다.

오류
EOFError 읽을 수 있는 데이터가 부족합니다. 로컬 SWF 파일이 보안 경고를 트리거하면 Flash Player에서는 ActionScript에서 URLStream 데이터를 사용하지 못하도록 합니다. 이 경우에는 데이터가 수신되어도 bytesAvailable 속성이 0을 반환하며 모든 읽기 메서드에서 EOFError 예외가 발생합니다.
 
IOError — 스트림에서 입출력 오류가 발생했거나, 스트림이 열려 있지 않습니다.
readFloat()메서드 
public function readFloat():Number

언어 버전: ActionScript 3.0
런타임 버전: AIR 1.0 Flash Player 9

스트림에서 IEEE 754 단정밀도 부동 소수점 숫자를 읽습니다.

반환값
Number — 스트림의 IEEE 754 단정밀도 부동 소수점 숫자입니다.

오류
EOFError 읽을 수 있는 데이터가 부족합니다. 로컬 SWF 파일이 보안 경고를 트리거하면 Flash Player에서는 ActionScript에서 URLStream 데이터를 사용하지 못하도록 합니다. 이 경우에는 데이터가 수신되어도 bytesAvailable 속성이 0을 반환하며 모든 읽기 메서드에서 EOFError 예외가 발생합니다.
 
IOError — 스트림에서 입출력 오류가 발생했거나, 스트림이 열려 있지 않습니다.
readInt()메서드 
public function readInt():int

언어 버전: ActionScript 3.0
런타임 버전: AIR 1.0 Flash Player 9

스트림에서 부호 있는 32비트 정수를 읽습니다.

반환된 값의 범위는 -2147483648에서 2147483647 사이입니다.

반환값
int — 범위 값은 -2147483648...2147483647입니다.

오류
EOFError 읽을 수 있는 데이터가 부족합니다. 로컬 SWF 파일이 보안 경고를 트리거하면 Flash Player에서는 ActionScript에서 URLStream 데이터를 사용하지 못하도록 합니다. 이 경우에는 데이터가 수신되어도 bytesAvailable 속성이 0을 반환하며 모든 읽기 메서드에서 EOFError 예외가 발생합니다.
 
IOError — 스트림에서 입출력 오류가 발생했거나, 스트림이 열려 있지 않습니다.
readMultiByte()메서드 
public function readMultiByte(length:uint, charSet:String):String

언어 버전: ActionScript 3.0
런타임 버전: AIR 1.0 Flash Player 9

지정된 문자 세트를 사용하여 바이트 스트림에서 지정된 길이의 멀티바이트 문자열을 읽습니다.

매개 변수

length:uint — 바이트 스트림에서 읽을 바이트 수입니다.
 
charSet:String — 바이트 해석에 사용할 문자 세트를 표시하는 문자열입니다. 사용할 수 있는 문자 세트 문자열에는 "shift_jis", "CN-GB", "iso-8859-1" 등이 있습니다. 전체 목록은 지원되는 문자 세트를 참조하십시오.

참고: 현재 시스템에서 charSet 매개 변수의 값을 인식하지 못하면 응용 프로그램에서 시스템의 기본 코드 페이지를 문자 세트로 사용합니다. 예를 들어 1이 아니라 01을 사용하는 myTest.readMultiByte(22, "iso-8859-01")의 경우처럼 charSet 매개 변수의 값이 사용자의 개발 컴퓨터에서는 작동하지만 다른 컴퓨터에서는 작동하지 않을 수 있습니다. 다른 컴퓨터의 경우 응용 프로그램은 시스템의 기본 코드 페이지를 사용합니다.

반환값
String — UTF-8 인코딩 문자열입니다.

오류
EOFError 읽을 수 있는 데이터가 부족합니다. 로컬 SWF 파일이 보안 경고를 트리거하면 Flash Player에서는 ActionScript에서 URLStream 데이터를 사용하지 못하도록 합니다. 이 경우에는 데이터가 수신되어도 bytesAvailable 속성이 0을 반환하며 모든 읽기 메서드에서 EOFError 예외가 발생합니다.
readObject()메서드 
public function readObject():*

언어 버전: ActionScript 3.0
런타임 버전: AIR 1.0 Flash Player 9

소켓에서 AMF로 인코딩된 객체를 읽습니다.

반환값
* — 직렬화가 해제된 객체입니다.

오류
EOFError — 읽을 수 있는 데이터가 부족합니다. 로컬 SWF 파일이 보안 경고를 트리거하면 Flash Player에서는 ActionScript에서 URLStream 데이터를 사용하지 못하도록 합니다. 이 경우에는 데이터가 수신되어도 bytesAvailable 속성이 0을 반환하며 모든 읽기 메서드에서 EOFError 예외가 발생합니다.
 
IOError — 스트림에서 입출력 오류가 발생했거나, 스트림이 열려 있지 않습니다.

참고 사항

readShort()메서드 
public function readShort():int

언어 버전: ActionScript 3.0
런타임 버전: AIR 1.0 Flash Player 9

스트림에서 부호 있는 16비트 정수를 읽습니다.

반환된 값의 범위는 -32768에서 32767 사이입니다.

반환값
int — 범위 값은 -32768...32767입니다.

오류
EOFError 읽을 수 있는 데이터가 부족합니다. 로컬 SWF 파일이 보안 경고를 트리거하면 Flash Player에서는 ActionScript에서 URLStream 데이터를 사용하지 못하도록 합니다. 이 경우에는 데이터가 수신되어도 bytesAvailable 속성이 0을 반환하며 모든 읽기 메서드에서 EOFError 예외가 발생합니다.
 
IOError — 스트림에서 입출력 오류가 발생했거나, 스트림이 열려 있지 않습니다.
readUnsignedByte()메서드 
public function readUnsignedByte():uint

언어 버전: ActionScript 3.0
런타임 버전: AIR 1.0 Flash Player 9

스트림에서 부호 없는 바이트를 읽습니다.

반환된 값의 범위는 0에서 255 사이입니다.

반환값
uint — 범위 값은 0...255입니다.

오류
EOFError 읽을 수 있는 데이터가 부족합니다. 로컬 SWF 파일이 보안 경고를 트리거하면 Flash Player에서는 ActionScript에서 URLStream 데이터를 사용하지 못하도록 합니다. 이 경우에는 데이터가 수신되어도 bytesAvailable 속성이 0을 반환하며 모든 읽기 메서드에서 EOFError 예외가 발생합니다.
 
IOError — 스트림에서 입출력 오류가 발생했거나, 스트림이 열려 있지 않습니다.
readUnsignedInt()메서드 
public function readUnsignedInt():uint

언어 버전: ActionScript 3.0
런타임 버전: AIR 1.0 Flash Player 9

스트림에서 부호 없는 32비트 정수를 읽습니다.

반환된 값의 범위는 0에서 4294967295 사이입니다.

반환값
uint — 범위 값은 0...4294967295입니다.

오류
EOFError 읽을 수 있는 데이터가 부족합니다. 로컬 SWF 파일이 보안 경고를 트리거하면 Flash Player에서는 ActionScript에서 URLStream 데이터를 사용하지 못하도록 합니다. 이 경우에는 데이터가 수신되어도 bytesAvailable 속성이 0을 반환하며 모든 읽기 메서드에서 EOFError 예외가 발생합니다.
 
IOError — 스트림에서 입출력 오류가 발생했거나, 스트림이 열려 있지 않습니다.
readUnsignedShort()메서드 
public function readUnsignedShort():uint

언어 버전: ActionScript 3.0
런타임 버전: AIR 1.0 Flash Player 9

스트림에서 부호 없는 16비트 정수를 읽습니다.

반환된 값의 범위는 0에서 65535 사이입니다.

반환값
uint — 범위 값은 0...65535입니다.

오류
EOFError 읽을 수 있는 데이터가 부족합니다. 로컬 SWF 파일이 보안 경고를 트리거하면 Flash Player에서는 ActionScript에서 URLStream 데이터를 사용하지 못하도록 합니다. 이 경우에는 데이터가 수신되어도 bytesAvailable 속성이 0을 반환하며 모든 읽기 메서드에서 EOFError 예외가 발생합니다.
 
IOError — 스트림에서 입출력 오류가 발생했거나, 스트림이 열려 있지 않습니다.
readUTF()메서드 
public function readUTF():String

언어 버전: ActionScript 3.0
런타임 버전: AIR 1.0 Flash Player 9

스트림으로부터 UTF-8 문자열을 읽습니다. 문자열 앞에는 문자열의 길이를 바이트 단위로 나타내는 unsigned short가 있어야 합니다.

반환값
String — UTF-8 문자열입니다.

오류
EOFError 읽을 수 있는 데이터가 부족합니다. 로컬 SWF 파일이 보안 경고를 트리거하면 Flash Player에서는 ActionScript에서 URLStream 데이터를 사용하지 못하도록 합니다. 이 경우에는 데이터가 수신되어도 bytesAvailable 속성이 0을 반환하며 모든 읽기 메서드에서 EOFError 예외가 발생합니다.
 
IOError — 스트림에서 입출력 오류가 발생했거나, 스트림이 열려 있지 않습니다.
readUTFBytes()메서드 
public function readUTFBytes(length:uint):String

언어 버전: ActionScript 3.0
런타임 버전: AIR 1.0 Flash Player 9

스트림에서 length UTF-8 바이트 시퀀스를 읽고 문자열을 반환합니다.

매개 변수

length:uint — UTF-8 바이트의 시퀀스입니다.

반환값
String — 지정된 길이의 문자를 바이트로 나타내어 생성된 UTF-8 문자열입니다.

오류
EOFError 읽을 수 있는 데이터가 부족합니다. 로컬 SWF 파일이 보안 경고를 트리거하면 Flash Player에서는 ActionScript에서 URLStream 데이터를 사용하지 못하도록 합니다. 이 경우에는 데이터가 수신되어도 bytesAvailable 속성이 0을 반환하며 모든 읽기 메서드에서 EOFError 예외가 발생합니다.
 
IOError — 스트림에서 입출력 오류가 발생했거나, 스트림이 열려 있지 않습니다.
이벤트 정보
complete 이벤트
이벤트 객체 유형: flash.events.Event
속성 Event.type = flash.events.Event.COMPLETE

언어 버전: ActionScript 3.0
런타임 버전: AIR 1.0 Flash Player 9

데이터가 성공적으로 로드되면 전달됩니다.

Event.COMPLETE 상수는 complete 이벤트 객체의 type 속성 값을 정의합니다.

이 이벤트에는 다음과 같은 속성이 있습니다.

속성
bubbles false
cancelable false; 취소할 기본 비헤이비어가 없습니다.
currentTarget 이벤트 리스너를 통해 Event 객체를 처리하고 있는 객체입니다.
target 로드가 완료된 네트워크 객체입니다.
AIR-only httpResponseStatus 이벤트  
이벤트 객체 유형: flash.events.HTTPStatusEvent
속성 HTTPStatusEvent.type = flash.events.HTTPStatusEvent.HTTP_RESPONSE_STATUS

언어 버전: ActionScript 3.0
런타임 버전: AIR 1.0, AIR 1.0

URLStream.load() 메서드 호출로 HTTP를 통해 데이터 액세스를 시도하고 Adobe AIR에서 요청에 대한 상태 코드를 감지 및 반환할 수 있을 때 전달됩니다.

URLStream 객체를 httpStatusEvent 이벤트에 대해 등록하면 오류 응답이 내용처럼 전달됩니다. 따라서 ioError 이벤트를 전달하는 대신 URLStream은 오류 데이터가 URLStream으로 로드될 때 progresscomplete 이벤트를 전달합니다.

httpStatus 이벤트와는 달리, httpResponseStatus 이벤트는 응답 데이터 이전에 전달됩니다. 또한 httpResponseStatus 이벤트에는 responseHeadersresponseURL 속성(httpStatus 이벤트에 대해 정의되어 있지 않음) 값이 포함되어 있습니다. httpResponseStatus 이벤트(있는 경우)는 complete 또는 error 이벤트 발생 전에 추가로 전송됩니다.

HTTPStatusEvent.HTTP_RESPONSE_STATUS 상수는 httpResponseStatus 이벤트 객체의 type 속성 값을 정의합니다.

이 이벤트에는 다음과 같은 속성이 있습니다.

속성
bubbles false
cancelable false; 취소할 기본 비헤이비어가 없습니다.
currentTarget 이벤트 리스너를 통해 Event 객체를 처리하고 있는 객체입니다.
responseURL 응답이 반환된 URL입니다.
responseHeaders URLRequestHeader 객체의 배열로 응답이 반환된 응답 헤더입니다.
status 서버에 의해 반환된 HTTP 상태 코드입니다.
target HTTP 상태 코드를 수신하는 네트워크 객체입니다.

참고 사항

httpStatus 이벤트  
이벤트 객체 유형: flash.events.HTTPStatusEvent
속성 HTTPStatusEvent.type = flash.events.HTTPStatusEvent.HTTP_STATUS

언어 버전: ActionScript 3.0
런타임 버전: AIR 1.0 Flash Player 9

URLStream.load() 호출로 HTTP를 통해 데이터 액세스를 시도하고 Flash Player 또는 Adobe AIR에서 요청에 대한 상태 코드를 감지 및 반환할 수 있을 때 전달됩니다. 일부 브라우저 환경에서는 이 정보를 제공할 수 없습니다. httpStatuscomplete 또는 error 이벤트 발생 전에 추가로 전송됩니다.

HTTPStatusEvent.HTTP_STATUS 상수는 httpStatus 이벤트 객체의 type 속성 값을 정의합니다.

이 이벤트에는 다음과 같은 속성이 있습니다.

속성
bubbles false
cancelable false; 취소할 기본 비헤이비어가 없습니다.
currentTarget 이벤트 리스너를 통해 Event 객체를 처리하고 있는 객체입니다.
status 서버에 의해 반환된 HTTP 상태 코드입니다.
target HTTP 상태 코드를 수신하는 네트워크 객체입니다.

참고 사항

ioError 이벤트  
이벤트 객체 유형: flash.events.IOErrorEvent
속성 IOErrorEvent.type = flash.events.IOErrorEvent.IO_ERROR

언어 버전: ActionScript 3.0
런타임 버전: AIR 1.0 Flash Player 9

로드 작업을 실패하게 만드는 입력/출력 오류가 발생할 때 전달됩니다.

ioError 이벤트 객체의 type 속성 값을 정의합니다.

이 이벤트에는 다음과 같은 속성이 있습니다.

속성
bubbles false
cancelable false; 취소할 기본 비헤이비어가 없습니다.
currentTarget 현재 이벤트 리스너를 통해 Event 객체를 처리하고 있는 객체입니다.
errorID 특정 오류와 연결된 참조 번호입니다(AIR만 해당).
target 입력/출력 오류가 발생한 네트워크 객체입니다.
text 오류 메시지로 표시될 텍스트입니다.

참고 사항

open 이벤트  
이벤트 객체 유형: flash.events.Event
속성 Event.type = flash.events.Event.OPEN

언어 버전: ActionScript 3.0
런타임 버전: AIR 1.0 Flash Player 9

로드 작업이 시작될 때 전달됩니다.

Event.OPEN 상수는 open 이벤트 객체의 type 속성 값을 정의합니다.

이 이벤트에는 다음과 같은 속성이 있습니다.

속성
bubbles false
cancelable false; 취소할 기본 비헤이비어가 없습니다.
currentTarget 이벤트 리스너를 통해 Event 객체를 처리하고 있는 객체입니다.
target 연결을 설정한 네트워크 객체입니다.

참고 사항

progress 이벤트  
이벤트 객체 유형: flash.events.ProgressEvent
속성 ProgressEvent.type = flash.events.ProgressEvent.PROGRESS

언어 버전: ActionScript 3.0
런타임 버전: AIR 1.0 Flash Player 9

다운로드 작업이 진행되어 데이터가 수신될 때 전달됩니다. 수신된 데이터는 URLStream 클래스의 메서드를 사용하여 즉시 읽을 수 있습니다.

progress 이벤트 객체의 type 속성 값을 정의합니다.

이 이벤트에는 다음과 같은 속성이 있습니다.

속성
bubbles false
bytesLoaded 리스너가 이벤트를 처리할 때 로드된 항목 수 또는 바이트 수입니다.
bytesTotal 로드 프로세스가 완료되면 최종적으로 로드될 총 바이트 수 또는 항목 수입니다.
cancelable false; 취소할 기본 비헤이비어가 없습니다.
currentTarget 이벤트 리스너를 통해 Event 객체를 처리하고 있는 객체입니다.
target 진행률을 보고하는 객체입니다.

참고 사항

securityError 이벤트  
이벤트 객체 유형: flash.events.SecurityErrorEvent
속성 SecurityErrorEvent.type = flash.events.SecurityErrorEvent.SECURITY_ERROR

언어 버전: ActionScript 3.0
런타임 버전: AIR 1.0 Flash Player 9

URLStream.load() 호출로 보안 샌드박스 외부의 서버에서 데이터 로드를 시도하면 전달됩니다.

SecurityErrorEvent.SECURITY_ERROR 상수는 securityError 이벤트 객체의 type 속성 값을 정의합니다.

이 이벤트에는 다음과 같은 속성이 있습니다.

속성
bubbles false
cancelable false; 취소할 기본 비헤이비어가 없습니다.
currentTarget 이벤트 리스너를 통해 Event 객체를 처리하고 있는 객체입니다.
target 보안 오류를 보고하는 네트워크 객체입니다.
text 오류 메시지로 표시될 텍스트입니다.

참고 사항

예제 예제 사용 방법
URLStreamExample.as

다음 예제에서는 SWF 파일을 로드하고 압축 및 버전 번호 정보를 나타내는 헤더의 시작 부분을 파싱합니다.

이 예제를 실행하려면 URLStreamExample.swf라는 이름의 파일을 사용자의 SWF 파일과 동일한 디렉토리에 넣습니다.

package {
    import flash.display.Sprite;
    import flash.errors.*;
    import flash.events.*;
    import flash.net.URLRequest;
    import flash.net.URLStream;

    public class URLStreamExample extends Sprite {
        private static const ZLIB_CODE:String = "CWS";
        private var stream:URLStream;

        public function URLStreamExample() {
            stream = new URLStream();
            var request:URLRequest = new URLRequest("URLStreamExample.swf");
            configureListeners(stream);
            try {
                stream.load(request);
            } catch (error:Error) {
                trace("Unable to load requested URL.");
            }
        }

        private function configureListeners(dispatcher:EventDispatcher):void {
            dispatcher.addEventListener(Event.COMPLETE, completeHandler);
            dispatcher.addEventListener(HTTPStatusEvent.HTTP_STATUS, httpStatusHandler);
            dispatcher.addEventListener(IOErrorEvent.IO_ERROR, ioErrorHandler);
            dispatcher.addEventListener(Event.OPEN, openHandler);
            dispatcher.addEventListener(ProgressEvent.PROGRESS, progressHandler);
            dispatcher.addEventListener(SecurityErrorEvent.SECURITY_ERROR, securityErrorHandler);
        }

        private function parseHeader():void {
            trace("parseHeader");
            trace("isCompressed: " + isCompressed());
            trace("version: " + stream.readByte());
        }

        private function isCompressed():Boolean {
            return (stream.readUTFBytes(3) == ZLIB_CODE);
        }

        private function completeHandler(event:Event):void {
            trace("completeHandler: " + event);
            parseHeader();
        }

        private function openHandler(event:Event):void {
            trace("openHandler: " + event);
        }

        private function progressHandler(event:Event):void {
            trace("progressHandler: " + event);
        }

        private function securityErrorHandler(event:SecurityErrorEvent):void {
            trace("securityErrorHandler: " + event);
        }

        private function httpStatusHandler(event:HTTPStatusEvent):void {
            trace("httpStatusHandler: " + event);
        }

        private function ioErrorHandler(event:IOErrorEvent):void {
            trace("ioErrorHandler: " + event);
        }
    }
}