2011-07-24 20 views
0

我想从外部域加载图像,我有以下至今:具有基本身份验证的远程映像?

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

这似乎并不工作 - 任何帮助吗?

谢谢!

+0

如果要加载从图像一个外部域,那么为什么你传递一个本地URL?你还可以提供关于服务器端的更多细节,因为它似乎期望一个身份验证标题,但格式不在你的问题中描述。你还可以为I/O错误添加事件监听器,以便清楚哪里出错? – MonkeyCoder

+0

我没有传递本地url,url的第一部分是subserverurl,它是htttp://serveraddress.com,然后/ rest/.....被固定。服务器的API是休息投诉,并运行亚音速。我可以通过在URL中传递证书来避免这个问题,但这似乎是一个糟糕的主意。不幸的是,在我的调试过程中不会出现任何错误。 –

回答