代码之家  ›  专栏  ›  技术社区  ›  Anentropic

URLLoader甚至不尝试加载。错误#2032:流错误

  •  2
  • Anentropic  · 技术社区  · 14 年前

    我正在尝试使用URLLoader从服务器(与swf相同的域)加载XML文件。这应该是太简单了,但我得到了

    如果我跟踪HTTP状态事件,它只会显示 状态=0 虽然我读到Mozilla没有给Flash播放器提供状态码,所以可能它没有提供信息。

    我可以浏览到url,它位于内部url上,如下所示: http://media.project:8080/audio/playlist.xml

    至端口=“8080” ),尽管它不需要。

    onOpen和onActivate事件都不会触发,只会触发一个HTTPStatus和IOError。

    我从Adobe示例中复制了常见的URLLoader代码,我的代码如下所示:

        public class PlaylistLoader extends EventDispatcher
    {
        public var xmlLoader:URLLoader;
        public var url:String = '';
    
        public function PlaylistLoader(url:String)
        {
            url = url;
            trace(url);
            xmlLoader = new URLLoader();
            xmlLoader.addEventListener(IOErrorEvent.IO_ERROR, onIOError);
            xmlLoader.addEventListener(Event.COMPLETE, onResult);
            xmlLoader.addEventListener(HTTPStatusEvent.HTTP_STATUS, httpStatusHandler);
            xmlLoader.addEventListener(Event.OPEN, onOpen);
            xmlLoader.addEventListener(Event.ACTIVATE, onActivate);
        }
    
        public function loadData():void {
            var req:URLRequest = new URLRequest(url);
            trace(req);
            xmlLoader.load(req);
        }
    
        protected function onResult(e:Event):void
        {
            var xmlData:XML = e.target.data as XML;
            parseData(xmlData);
        }
    
        private function httpStatusHandler(event:HTTPStatusEvent):void {
            trace("httpStatusHandler: " + event);
        }
    
        protected function onOpen(e:Event):void
        {
            trace(e);
        }
    
        protected function onActivate(e:Event):void
        {
            trace(e);
        }
    
        protected function onIOError(e:IOErrorEvent):void
        {
            trace(e);
        }
    
    2 回复  |  直到 14 年前
        1
  •  3
  •   poke    14 年前
    url = url;
    

    在构造函数中设置 url 地方的 网址 明确地(或使用不同的名称):

    this.url = url;
    
        2
  •  0
  •   agil    14 年前

    似乎url字符串仍然是空的

    public var url:String = '';
    

    不是吗?

    public var url:String = 'http://media.project:8080/audio/playlist.xml';