Silverlight請求Webservice出錯問題解決

嘗試向 URI“http://localhost:XXXX/XXXXXX.asmx”發出請求時出錯。這可能是由於試圖以跨域方式訪問服務而又沒有正確的跨域策略,或策略不適用於 SOAP 服務。您可能需要與該服務的所有者聯繫,以發佈跨域策略文件並確保該文件允許發送 SOAP 相關的 HTTP 標頭。出現此錯誤也可能是由於使用的是 Web 服務代理中的內部類型而沒有使用 InternalsVisibleToAttribute 屬性。有關詳細信息,請參閱內部異常。


Silverlight的數據訪問採用Wcf提供數據源.ClientAccessPolicy.xml與CrossDomain.xml是Silverlight解決跨域訪問Wcf。

 

解決方法是在同一服務器上部署服務與sl終端(iis站點)或是在webservice服務器的“根”裏放兩個文件:

----clientaccesspolicy.xml
<?xml version="1.0"encoding="utf-8"?>
<access-policy>
<cross-domain-access>
<policy>
<allow-fromhttp-request-headers="*">
<domain uri="*"/> // 這裏寫上sl的url,或是*.
</allow-from>
<grant-to>
<resource path="/"include-subpaths="true"/>
</grant-to>
</policy>
</cross-domain-access>
</access-policy>
 -----crossdomain.xml
<?xml version="1.0"?>
<cross-domain-policy>
<allow-access-from domain="*" /> //這裏寫上sl的url, 或是*.
</cross-domain-policy>

發佈了64 篇原創文章 · 獲贊 4 · 訪問量 3萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章