![](/img/trans.png)
[英]WCF Rest Service POSTS on local IIS but not on server (GET works in both)
[英]Accessing WCF REST service through IIS using CORS works locally but not from connected device
我有一組WCF服務,我已啟用WebInvoke。 我希望訪問它們的一種方法是通過IIS托管的簡單網頁上的javascript。 為了使這一點工作,我必須啟用CORS,我使用本指南管理: http : //blogs.microsoft.co.il/idof/2011/07/02/cross-origin-resource-sharing- CORS和- WCF /
但是,當我從另一台計算機通過本地網絡訪問網頁時仍然存在問題。
舉個例子:
網絡Comp1(10.0.0.1)和Comp2(10.0.0.2)上的兩台計算機。 IIS和WCF服務都由Comp1托管。
使用Firefox我可以使用以下命令從Comp1訪問網頁:http:// 10.0.0.1:12345
只要根據上面的鏈接啟用CORS,這就可以工作。 如果我禁用CORS,我會收到一條錯誤消息,提示CORS已被禁用。
如果我使用Comp2中的Firefox訪問10.0.0.1:12345,無論是否在WCF服務器中啟用了CORS代碼,我都會得到相同的CORS錯誤消息。 如果CORS被禁用,我在這里得到的錯誤消息與我在Comp1上獲得的錯誤消息相同。
有沒有人對可能出錯的地方有任何建議?
使用Visual Studio 2013,所有內容(js和html除外)都在C#中。請告訴我是否應該包含一些代碼以獲得更好的幫助。
確保在IIS中為CORS支持啟用了自定義標頭。 如果沒有將以下設置添加到web.config的根目錄
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<system.webServer>
<httpProtocol>
<customHeaders>
<add name="Access-Control-Allow-Origin" value="*" />
</customHeaders>
</httpProtocol>
</system.webServer>
</configuration>
PS - 您還可以簽出這個支持CORS啟用行為的新WCF休息行為擴展庫。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.