Ich habe eine ASPX-Seite erstellt, die dynamisch eine XML-Zeichenfolge erstellt und sie zurück an den Client sendet.Lesen von XML in Flash von einer ASPX Seite
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());
}
Es schafft gültige XML und wenn ich diesen Code in einen statischen .xml der Blitz kann es feine Datei speichern lesen, obwohl, wenn es versucht, es von der ASPX zu lesen es mit „1090 XML-Parser Ausfall fehl: element ist missgebildet ".
Ich habe keine HTTP-Komprimierung auf.
Flash-Code.
//---------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);
Irgendwelche Ideen?
Wie sieht Ihre fileLoaded-Funktion aus? – quoo
Ihr Flash-Code zeigt nicht an, was er tatsächlich mit der Antwort macht. Sie erstellen ein XML-Objekt, tun aber nichts damit. Können Sie zeigen, wo Sie mit den Daten arbeiten, die Sie zurückbekommen? Das ist wahrscheinlich der Fehler. – Herms
oh guter Punkt - Ihre var myXML: XML = new XML(); Linie macht nicht viel. Es ist auch XML.ignoreWhitespace - es ist eine statische Eigenschaft. – quoo