2011-07-24 19 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中傳遞證書來避免這個問題,但這似乎是一個糟糕的主意。不幸的是,在我的調試過程中不會出現任何錯誤。 –

回答