Flash에서 현재 경로 구하기

//AS3
import flash.external.ExternalInterface;
var index:Number = this.loaderInfo.url.indexOf("?",0);
var curl:String = this.loaderInfo.url.slice(0,index);
var len:Number = curl.length;
var pathes:Array = curl.split("/");
ExternalInterface.call("alert", pathes[3]);

xml.load()시에 유의할 점

다음과 같은 디렉토리 구조를 가지고,
/info/view.html
/flash/grid.swf
/flash/data.xml

view.html에서 /flash/grid.swf를 포함했다.
따라서 swf 파일 기준으로 보았을때,
xml.load(“data.xml”);
과 같이 코딩하면 맞을거 같다.

하지만 실제 request되는 경로를 확인하면,
/info/data.xml 된다.

즉 swf 파일이 아니라 swf를 포함하고 있는 html 파일 기준으로 패스를 판단한다.
따라서 위와 같은 경우는
xml.load(“../data.xml”); 같이 쓰거나,
절대 패스를 써야한다.

Leave a Reply

Close Menu