您好,登錄后才能下訂單哦!
這篇文章將為大家詳細講解有關如何解決Flex跨域調用Webservice問題,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。
Flex跨域調用Webservice問題
最近在用Flex做一個項目,在本機調試一切正常,傳到服務器上之后出現如下錯誤:
[RPCFaultfaultString="Securityerroraccessingurl" faultCode="Channel.Security.Error" faultDetail="UnabletoloadWSDL.
查明是swf文件跨域訪問安全機制的問題,最簡單的解決辦法就是在所調用的webservice服務器的根目錄上加上一個策略文件,默認名為crossdomain.xml內容如下:
<?xmlversionxmlversion="1.0"?> <cross-domain-policy> <allow-access-fromdomainallow-access-fromdomain="*"/> cross-domain-policy>
同樣也可以在代碼中調用
flash.system.Security.loadPolicyFile(http://mydomain/crossdomain.xml);方法來加載策略文件。
◆加上策略文件之后,以為這下應該沒有可以了,但不幸的是又出現新的錯誤,這次錯誤信息有所不同,但同樣和跨域訪問有關系,錯誤如下:
[RPCFaultfaultString="Securityerroraccessingurl" faultCode="Channel.Security.Error" faultDetail="Destination:DefaultHTTP"]
最后發現是flash播放器版本更新成9.0.124之后,對安全方面有很多的改變,所以造成了這種錯誤的出現,解決辦法也很簡單,在原來的crossdomain.xml文件中加入以下代碼即可。
<allow-http-request-headers-fromdomainallow-http-request-headers-fromdomain="*"headers="*"/>
關于“如何解決Flex跨域調用Webservice問題”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,使各位可以學到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。