silverlight 出於對安全性的考慮預設情況下對url的訪問進行了嚴格的限制,只允許訪問同一子域下的url資源。
下表列出了silverlight 2.0 中 url 訪問規則:
webclient物件
media、images、asx
xaml 檔案、font 檔案
流**允許的協議
跨協議訪問
不允許不允許
不允許不允許來自https的訪問
跨web域訪問
不允許如果不是來自https則允許
不允許允許
跨安全區域訪問(windows)
不允許不允許
不允許不允許
跨安全區域訪問(macintosh)
不允許允許
不允許允許
允許重定向
同域允許
允許同域允許
不允許
如果wcf與silverlight web不是在同一站點,那麼我們就要在被訪問端的根域放上兩個xml檔案clientaccesspolicy.xml,crossdomain.xml
如果要通過webclinet訪問另一站點的資源,那麼需要在被訪問站點放上域訪問策略xml檔案,不然在complete事件裡面的事件引數報告空物件引用。這個問題困擾我很久,現在終於解決,放上來與大家共享。
關於clientaccesspolicy.xml,crossdomain.xml的具體說明,請大家參看msdn
這幾天想用silverlight訪問**的xml檔案,以及跨域使用session資訊,一直提示安全性錯誤,搜尋了很多,終於解決了。
得在站點根目錄新增乙個clientaccesspolicy.xml檔案,**如下:
其中/inte***ce 為需要訪問的檔案所在的路徑,並且這個檔案需要放在將要訪問的站點根目錄。
我看網上很多寫的include-subpaths="false"。我試了,貌似不行,也不知道是什麼原因。
跨域與跨域訪問
跨域是指從乙個網域名稱的網頁去請求另乙個網域名稱的資源。比如從www.baidu.com 頁面去請求 www.google.com 的資源。跨域的嚴格一點的定義是 只要協議,網域名稱,埠有任何乙個的不同,就被當作是跨域 使用者訪問www.mybank.com 登陸並進行網銀操作,這時cookie啥的...
跨域與跨域訪問
跨域是指從乙個網域名稱的網頁去請求另乙個網域名稱的資源。比如從www.baidu.com 頁面去請求 www.google.com 的資源。跨域的嚴格一點的定義是 只要協議,網域名稱,埠有任何乙個的不同,就被當作是跨域 使用者訪問www.mybank.com 登陸並進行網銀操作,這時cookie啥的...
本地資源訪問跨域問題
一 上傳輪播 包含檔案 新增輪播資訊 儲存檔案 file storefile new file rootpath realpath file.transferto storefile 寫入資料庫 carousel.setphotopath realpath if carousel null retu...