我有一個RESTlike API,我想從Silverlight訪問。它需要支持以下內容:如何爲此API構建clientaccesspolicy.xml?
- 所有請求都通過SSL由
- 允許GET,POST,PUT,DELETE(或者隨便什麼)
- 允許任何請求頭
- 允許從任何主機的請求
非常開闊。我對文檔有點困惑,所以有人可以看看它的樣子嗎?
我有一個RESTlike API,我想從Silverlight訪問。它需要支持以下內容:如何爲此API構建clientaccesspolicy.xml?
非常開闊。我對文檔有點困惑,所以有人可以看看它的樣子嗎?
東西寬敞,但只允許https而不是http,看起來像這樣,會需要被命名爲clientaccesspolicy.xml,並放置在網站根目錄:
<?xml version="1.0" encoding="utf-8" ?>
<access-policy>
<cross-domain-access>
<policy>
<allow-from http-request-headers="*" http-methods="*">
<domain uri="https://*" />
</allow-from>
<grant-to>
<resource path="/" include-subpaths="true"/>
</grant-to>
</policy>
</cross-domain-access>
</access-policy>
如果你想允許HTTP和HTTPS訪問,你需要在明確的列出二者的允許,從節點,因爲它是選擇加入和一個簡單的*通配符不適用於SSL。
編輯:根據John的評論添加http-methods="*"
以允許GET和POST以外的方法。
下面是關於這個問題的MSDN文檔:Making a Service Available Across Domain Boundaries.
在哪裏開始的一些提示:
好的鏈接...謝謝喬恩! – 2010-10-25 23:06:39
你知道我是否需要向allow-from元素添加http-methods =「*」嗎? – 2010-10-25 23:05:54
嘿,約翰,你是對的。如果您不添加http-methods =「*」,則只允許GET和POST ...這是我的疏忽。我會更新我的答案。如果您好奇,請在此處找到相關信息:http://msdn.microsoft.com/zh-cn/library/cc645032(VS.95).aspx – 2010-10-26 15:43:32