Чтение XML во Flash со страницы ASPX - PullRequest
0 голосов
/ 01 мая 2009

Я создал страницу 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, и когда я сохраняю этот код в статическом файле .xml, флэш-память может прочитать его нормально, хотя при попытке прочитать его из ASPX происходит сбой с «1090 Ошибка синтаксического анализатора XML: элемент поврежден».

У меня нет сжатия http.

Flash-код.

//---------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);

Есть идеи?

Ответы [ 2 ]

1 голос
/ 01 мая 2009

Похоже, что когда flash вызывает страницу aspx, она получает ответ, отличный от ожидаемого, попробуйте использовать функцию fileLoaded:

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);
     }
}

, которая, надеюсь, даст вам больше информации о том, что происходит не так.

0 голосов
/ 01 мая 2009

Попробуйте использовать это

"<![CDATA[" and ends with "]]>"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...