URLRequest无法在As3中的跨域中工作?

时间:2009-12-07 01:30:40

标签: actionscript-3

URLRequest无法在AS3中的跨域工作?

<?xml version="1.0" encoding="utf-8"?>

<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" applicationComplete="init()">
    <mx:Button x="35" y="22" label="Button" click="test()"/>
    <mx:TextArea x="35" y="65" width="365" height="254" id="aaa"/>
    <mx:Script>
        <![CDATA[

            function init():void {
      Security.allowDomain("*");  // localhost, 192.168.0.19
    Security.loadPolicyFile("http://abcomp01.thaifasthost.com/crossdomain.xml"); 
   }

            function test():void {
            var url:String = "http://bbs.pramool.com/webboard/view.php3?katoo=j530492";
            var request:URLRequest = new URLRequest(url);
            var loader : URLLoader = new URLLoader();
            request.url = url;

            request.method = URLRequestMethod.POST;
            loader.addEventListener(Event.COMPLETE, on_complete);
            loader.addEventListener(IOErrorEvent.IO_ERROR, on_error);       
            //navigateToURL(request);
                        try {
                loader.load(request);
            } 
            catch (error:Error) {
            }

            }


            function on_complete(e : Event):void{
            var loader:URLLoader = e.target as URLLoader;
            if (loader != null)
            {
                aaa.text = loader.data;
            }
        }
        function on_error(e : Event):void{
        }   
        ]]>
    </mx:Script>
</mx:Application>

在XML跨域:

<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE cross-domain-policy SYSTEM "http://www.macromedia.com/xml/dtds/cross-domain-policy.dtd">
<cross-domain-policy>
    <allow-access-from domain="*" to-ports="*" />
</cross-domain-policy>

我该如何解决这个问题?

当我上传到我自己的主机时,它可以正常工作,但在本地计算机上却没有。

1 个答案:

答案 0 :(得分:1)

你在使用URLRequest对象做什么?要确保的一件事是,您尝试连接到该服务器的服务器上有一个crossdomain.xml策略文件。