我已經得到了我HTTPS上運行的應用程序Silverlight4,部署到Azure上。一切工作除了一個小故障。我以jpg縮略圖和帶有.gld擴展名的相關zip文件的形式提供了內容。我的應用應該顯示縮略圖,並允許用戶下載關聯的.gld/zip文件。Silverlight的跨方案訪問被拒絕
的下載工作正常,但是,縮略圖不會在我的UI顯示。我從我的ImageFailed處理程序中獲取AG_E_NETWORK_ERROR。我在我的cdn域的根目錄中有一個clientaccesspolicy.xml文件。 Fiddler不顯示Silverlight訪問這個文件。
這裏的clientaccesspolicy.xml:
<?xml version="1.0" encoding="utf-8"?>
<access-policy>
<cross-domain-access>
<policy>
<allow-from>
<domain uri="*"/>
<domain uri="http://*"/
<domain uri="https://*"/>
</allow-from>
<grant-to>
<resource path="/" include-subpaths="true" />
</grant-to>
</policy>
</cross-domain-access>
</access-policy>
我難倒爲Silverlight可以如何訪問該可下載內容,而不是圖像文件。如果我將它們部署到Azure的blob存儲(在$ root文件夾中具有相同的clientaccesspolicy.xml文件),應用程序確實會選擇縮略圖,但如果我可以繼續執行與我的cdn中已有的相同文件結構供應商。
一切顯示完美,如果Silverlight應用程序在運行的HTTP而不是HTTPS。
在此先感謝您的任何想法!
邁克爾·康納
您可以添加更多關於您將URI分配給Image元素的機制的詳細信息嗎?你在使用數據綁定嗎?它是一個相對或絕對的URI? – Murven 2010-10-27 05:49:36
嗨 - 它的數據綁定到圖像類型屬性,使用絕對URI – 2010-10-27 20:45:02