AS3에는 외부 파일이나 데이타에 접근하기 위해 URLLoader와 URLRequest ,Loader클래스를 사용한다.
우선 네트워크 다이어그램을 보면 그림과 같다.
그림을 보면 swf가 서버에 Request(요청)한다. 그러면 서버는 필요한 응답을 하게된다. 중요한 것은 swf가 요청할 때 이다. Request클래스는 swf에서 서버로 요청하기 위해 사용되는 클래스이다.
다만 무엇이 요청하느냐에 따라 요청하는 마스터 클래스를 선택해야 한다.
1 URLLoader
URLLoader클래스는 문자형 데이터(XML이나 파라미터.. 등), 2진데이터(바이너리 데이터 , zip...)등을 처리하기 위해 사용한다.
참고로 AS1같은 경우에 이와 비슷한 역할을 하는 것이 바로 "경로.loadVariables("url 경로")"이다.
2 Loader
Loader클래스는 주로 화면에 보여지는 이미지나 swf등의 파일을 담는 역할을 한다. 이것 역시AS1에 있는
경로.loadMovie("url 경로")와 같은 것이라고 생각하면 된다.
3 URLRequest
서버와 통신시 필요한 파라미터나 메소드(GET , POST)방식을 설정하여 서버에 전달하는 객체이다.
이 객체는 loadVariables("url")이나 loadMovie("url")에서 필요한 "url"을 담당하는 객체이다.
따라서 이 URLRequest()는 서버와의 통신이 필수인 객체이다.
가령 불러올 데이터가 파라미터나 2진 데이터이면 URLLoader()클래스를 사용하고 그래픽 적인 요소를 불러올 것이면 Loader() 클래스를 사용한다. 이 두 객체가 외부와의 통신을 시도하려면 URLRequest()를 필수로 사용하게 된다. 이 두개의 클래스는 모두 load()라는 메서드를 가지고 있다. 이부분에 URLRequest()를 인자로 넣어서 사용하면 된다.
private var loader:Loader = new Loader();
private var request:URLRequest = new URLRequest("./imgs/sample.jpg");
loader.load(request);
loader.contentLoaderInfo.addEventListener( Event.COMPLETE , onComp )
private function onComp( e:Event ):void
{
addChild( loader )
}
위의 코드는 Loader클래스에 sample.jpg라는 이미지를 불러들여 이를 addChild()하는 코드이다.
우선 네트워크 다이어그램을 보면 그림과 같다.
그림을 보면 swf가 서버에 Request(요청)한다. 그러면 서버는 필요한 응답을 하게된다. 중요한 것은 swf가 요청할 때 이다. Request클래스는 swf에서 서버로 요청하기 위해 사용되는 클래스이다.
다만 무엇이 요청하느냐에 따라 요청하는 마스터 클래스를 선택해야 한다.
1 URLLoader
URLLoader클래스는 문자형 데이터(XML이나 파라미터.. 등), 2진데이터(바이너리 데이터 , zip...)등을 처리하기 위해 사용한다.
참고로 AS1같은 경우에 이와 비슷한 역할을 하는 것이 바로 "경로.loadVariables("url 경로")"이다.
2 Loader
Loader클래스는 주로 화면에 보여지는 이미지나 swf등의 파일을 담는 역할을 한다. 이것 역시AS1에 있는
경로.loadMovie("url 경로")와 같은 것이라고 생각하면 된다.
3 URLRequest
서버와 통신시 필요한 파라미터나 메소드(GET , POST)방식을 설정하여 서버에 전달하는 객체이다.
이 객체는 loadVariables("url")이나 loadMovie("url")에서 필요한 "url"을 담당하는 객체이다.
따라서 이 URLRequest()는 서버와의 통신이 필수인 객체이다.
가령 불러올 데이터가 파라미터나 2진 데이터이면 URLLoader()클래스를 사용하고 그래픽 적인 요소를 불러올 것이면 Loader() 클래스를 사용한다. 이 두 객체가 외부와의 통신을 시도하려면 URLRequest()를 필수로 사용하게 된다. 이 두개의 클래스는 모두 load()라는 메서드를 가지고 있다. 이부분에 URLRequest()를 인자로 넣어서 사용하면 된다.
private var loader:Loader = new Loader();
private var request:URLRequest = new URLRequest("./imgs/sample.jpg");
loader.load(request);
loader.contentLoaderInfo.addEventListener( Event.COMPLETE , onComp )
private function onComp( e:Event ):void
{
addChild( loader )
}
위의 코드는 Loader클래스에 sample.jpg라는 이미지를 불러들여 이를 addChild()하는 코드이다.