簡體   English   中英

我發布SWF文件時無法讀取XML數據

[英]XML data can't be read by swf file when i publish it

我正在嘗試從URL http://localhost:15979/default.aspx讀取數據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文件,並且myXML.IMAGE[1].@TITLE; 沒有出現在屏幕上。另一個問題是當我更改xml時,所做的更改不適用於SWF文件。

我將xml表單更改為:

<?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>

但是.fl文件拋出此錯誤:

TypeError: Error #1088: The markup in the document following the root element must be well-formed.
    at _3333333333333333333333_fla::MainTimeline/xmlLoaded()
    at flash.events::EventDispatcher/dispatchEventFunction()
    at flash.events::EventDispatcher/dispatchEvent()
    at flash.net::URLLoader/onComplete()

我最終將跨域文件添加到我的項目中,如您在此處看到的:

<?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");

一切都很好。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM