2011年6月26日

HTTPService及FaultEvent

因為HTTPService是不可視的,因此我們必須將它放在<fx:Declarations>
HTTPService並不會自己發出POST或是GET請求,必須由使用者來呼叫send()方法啟用,在HTTPService屬性中必須明確告知URL,這個URL可以是處於同一目錄下的靜態xml檔案,也可以是遠程的資源(JSP,ASP等動態產生文件)

<fx:Declarations>
       <s:HTTPService id="employeeService"                 url="http://adobetes.com/f45iaw100/remoteData/employees.xml"
/>
</fx:Declarations>


如果給HTTPService錯誤的URL此時會產生錯誤,並且會有FaultEvent產生,如果我們沒有為HTTPService實現錯誤產生的Handler錯誤會在瀏覽器中顯示,但通常我們是需要印出這些內容來做除錯之功用。

故意產生錯誤
<fx:Declarations>
    <s:HTTPService id="employeeService"
                   url="http://adobetes.com/f45iaw100/remoteData/employees.xm"
                   result="employeeService_resultHandler(event)"
                   fault="faultHandler(event)"/>
</fx:Declarations>

當錯誤發生時handler就會捕捉到FaultEvent事件
protected function faultHandler(event:FaultEvent):void
{
    Alert.show(event.fault.faultString,"Error Information");
}

錯誤訊息

沒有留言:

ShareThis