ダイナミックにXML文字列を作成してクライアントに返信するaspxページを作成しました。ASPXページからのXML読み込み
protected void Page_Load(object sender, EventArgs e)
{
Response.Clear();
Response.ContentType = "text/xml";
Response.ContentEncoding = Encoding.UTF8;
var flashAssets = Asset.GetScrollingFlashAssets();
var xmlResponse = new StringBuilder(@"<?xml version=""1.0"" encoding=""UTF-8"" ?><assets>");
flashAssets.ForEach(asset => xmlResponse.Append(@"<asset>handlers/ImageHandler.ashx?liAssetID=" + asset.AssetID + "</asset>"));
xmlResponse.Append("</assets>");
Response.Write(xmlResponse.ToString());
}
それは有効なXMLを作成し、それがASPXからそれを読み取ろうとしたとき、私は静的にこのコードを保存したときにフラッシュが罰金それを読むことができます.xmlファイル、しかしそれは「1090 XMLパーサの失敗で失敗:要素不正な形式です "。
私はHTTP圧縮を持っていません。
フラッシュコード。
//---------loading the external xml file-------
var urlRequest:URLRequest = new URLRequest("../xml/CaseStudyFlashAssets.aspx");
var urlLoader:URLLoader = new URLLoader();
var myXML:XML = new XML();
var xmlList:XMLList;
myXML.ignoreWhitespace = true;
urlLoader.addEventListener(Event.COMPLETE,fileLoaded);
urlLoader.load(urlRequest);
うまくいけばべき
public function fileLoaded(event:Event):void{
trace('urlLoader.data is ' + urlLoader.data);
try{
var xmlData:XML = XML(urlLoader.data);
} catch (e:Error) {
trace('Error creating XML: ' + e);
}
}
:
fileLoaded関数はどのように見えますか? – quoo
あなたのフラッシュコードは、実際に応答で何をしているのかを示していません。あなたはXMLオブジェクトを作成していますが、何もしません。戻ったデータを実際に処理する場所を表示できますか?それはおそらくエラーの原因です。 – Herms
ああ良い点 - あなたのvar myXML:XML =新しいXML();ラインは実際にはあまり効果がありません。 またXML.ignoreWhitespaceです。これは静的なプロパティです。 – quoo