具有基本认证的远程图像?

时间:2011-07-24 09:11:49

标签: flex air

我想从外部域加载一个图像,到目前为止我有以下内容:

            private function get_coverArt(coverArtID:String):void
        {
            var requestString:String = "/rest/getCoverArt.view?v=1.5.0&c=AirSub&id=" + coverArtID;
            var requestURL:String = subServerURL + requestString;

            myCoverArtLoader = new URLLoader();
            var myRequest:URLRequest = new URLRequest();

            var authHeader:URLRequestHeader = new URLRequestHeader();
            authHeader.name = 'Authorization';
            authHeader.value = 'Basic ' + credentials;

            myRequest.requestHeaders.push(authHeader);
            myRequest.url = requestURL;
            myRequest.method = URLRequestMethod.GET;
            myCoverArtLoader.dataFormat = URLLoaderDataFormat.BINARY;

            myCoverArtLoader.addEventListener(Event.COMPLETE, set_coverArt);
            myCoverArtLoader.load(myRequest);   

        }

        private function set_coverArt(evt:Event) : void {
            coverArtImg = new Image();

            var loader:Loader = new Loader();
            loader.loadBytes(myCoverArtLoader.data);
            coverArtImg.source = loader;
        }

这似乎没有用 - 有什么帮助吗?

谢谢!

1 个答案:

答案 0 :(得分:1)

尝试直接设置源:

        private function set_coverArt(evt:Event) : void {
            coverArtImg = new Image();
            coverArtImg.source = myCoverArtLoader.data;
        }

另外,请检查您的身份验证,这是我回答的关于身份验证的问题:

Actionscript 3: Reading an RSS feed that requires authentication