我正在尝试从网址http://localhost:15979/default.aspx
读取数据。网址的输出是:
<?xml version="1.0" encoding="utf-8"?>
<GALLERY>
<IMAGE TITLE="abs">image1.jpg</IMAGE>
<IMAGE TITLE="iron">image2.jpg</IMAGE>
<IMAGE TITLE="shop">image3.jpg</IMAGE>
</GALLERY>
我使用以下代码获取此值into adobe flash cs
:
var myXML:XML = new XML();
var XML_URL:String = "http://localhost:15979/default.aspx";
var myXMLURL:URLRequest = new URLRequest(XML_URL);
var myLoader:URLLoader = new URLLoader(myXMLURL);
myLoader.addEventListener(Event.COMPLETE, xmlLoaded);
function xmlLoaded(event:Event):void
{
myXML = XML(myLoader.data);
trace("Data loaded.");
txtname.text=myXML.IMAGE[1].@TITLE;
}
所以当我按ctrl +enter
时,swf文件显示结果并且每件事情都正常,但是当我发布swf
文件时,我的XML文件无法读取而{{1}屏幕上没有问题。另一个问题是当我更改xml时,更改不适用于SWF文件。
我将xml表单更改为:
myXML.IMAGE[1].@TITLE;
但是.fl文件会抛出此错误:
<?xml version="1.0"?>
<cross-domain-policy>
<allow-access-from domain="*" secure="false" />
</cross-domain-policy>
<GALLERY>
<IMAGE TITLE="asas">image1.jpg</IMAGE>
<IMAGE TITLE="ssssss">image2.jpg</IMAGE>
<IMAGE TITLE="shop">image3.jpg</IMAGE>
</GALLERY>
答案 0 :(得分:0)
我最后在我的项目中添加了一个跨域文件,如下所示:
<?xml version="1.0" encoding="utf-8" ?>
<cross-domain-policy>
<allow-http-request-headers-from domain="*" headers="*"/>
<allow-access-from domain="*"/>
</cross-domain-policy>
我在我的flash文件中调用此文件,如下所示:
Security.loadPolicyFile("http://localhost:15979/crossdomain.xml");
并且一切正常。