WCF跨域策略實現(原)

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


解決方法:

一、在WCF項目根目錄下添加clientaccesspolicy.xml文件


xml代碼如下:

<?xml version="1.0" encoding="utf-8" ?>
<access-policy>
  <cross-domain-access>
    <policy>
      <allow-from http-request-headers="*">
        <domain uri="*"/>
      </allow-from>
      <grant-to>
        <resource path="/" include-subpaths="true"/>
      </grant-to>
    </policy>
  </cross-domain-access>
</access-policy>


二:在silverlight項目中添加一箇中介類ServerManager.cs


代碼如下:



如此,即可實現WCF跨域策略






發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章