2012-12-22 76 views
0

我有一個窗口應用程序作爲我的基礎應用程序。要避免任務欄中應用程序的選項卡欄圖標,我關閉本機窗口並從另一個窗口打開內容。 在這裏,我將調用http服務方法。但沒有任何反應,並且在編譯和運行時沒有顯示錯誤。 所有其他操作都正常。爲什麼我不能窗口中調用HTTP服務在Adobe AIRHttpService不工作在<window>土坯空氣

代碼在主應用程序中打開新的窗口:

<?xml version="1.0" encoding="utf-8"?> 
    <mx:Window name="MyWin" 
       xmlns:fx="http://ns.adobe.com/mxml/2009" 
       xmlns:s="library://ns.adobe.com/flex/spark" 
       xmlns:mx="library://ns.adobe.com/flex/mx" 

       creationComplete="httpService()" > 


     <fx:Script> 
      <![CDATA[ 
       import mx.collections.ArrayCollection; 
       import mx.controls.Alert; 
       import mx.rpc.events.FaultEvent; 
       import mx.rpc.events.ResultEvent; 
       import mx.rpc.http.HTTPService; 


       public function httpService():void { 

        var httpSer : HTTPService = new HTTPService(); 
        httpSer.url = "http://flexairapp..."; 
        httpSer.method = "GET"; 
        httpSer.addEventListener(ResultEvent.RESULT, httpResult); 
        httpSer.addEventListener(FaultEvent.FAULT, httpFault); 
        httpSer.resultFormat="text"; 

        var parameters:Object = new Object(); 
        httpSer.send(); 
       } 



       public function httpResult(event:ResultEvent):void { 


        var dataResult:String = event.result.toString(); 

       } 

       public function httpFault(event:FaultEvent):void { 
        var faultstring:String = event.fault.faultDetail; 

       } 
      ]]> 
     </fx:Script> 

    </mx:Window> 
+0

你是否在調試模式下使用httpService,httpResult和httpFault中的斷點運行代碼?您是否使用過網絡嗅探器(例如Flash Builder網絡監視器)來檢查呼叫以查看您是否收到響應?由於dataResult和faultString是結果和錯誤處理程序的局部變量;他們將不在這些方法的範圍之外;這可能會導致意想不到的問題,具體取決於您要做什麼以及返回的數據。 – JeffryHouser

回答

1

嘗試設置您的主:對於窗口

public function init():void { 

       nativeWindow.close(); 
        var newWindow:MyWin = new MyWin(); 
       newWindow.systemChrome = NativeWindowSystemChrome.NONE; 
       newWindow.type = NativeWindowType.LIGHTWEIGHT; 
       newWindow.transparent = true; 
       newWindow.open(true); 


      } 

代碼窗口可見性爲false而不是關閉它。我想它可以認爲你想終止你的應用程序(並且主窗口的所有子窗口也關閉)。

+0

感謝您的建議,當我爲WindowedApplication標籤添加visible =「false」時,對於主窗口,其按預期工作。 – Nancy