我已經寫了一個WebAPI控制器,我正在使用CORS以交叉域AJAX調用的GET方式請求數據。在我的本地環境中,通過HTTP,一切都按預期工作。當我通過HTTPS將代碼推廣到我們的預生產環境時,OPTIONS請求失敗,出現以下情況: 請求的資源上不存在'Access-Control-Allow-Origin'標頭CORS選項通過HTTPS請求失敗
在進行調查,我發現如果請求發生錯誤,則會顯示Access-Control-Allow-Origin錯誤。不管錯誤是什麼。這對安全是有幫助的,所以我找不到實際的錯誤。
正如我之前所說的,所有內容都可以在HTTP上很好地工作,但是無法通過HTTPS。我已經在WebAPI控制器上設置了日誌記錄,當通過跨域的HTTPS請求時,OPTIONS方法甚至沒有被擊中。
下面是我的WebAPI控制器的OPTIONS方法:
[AcceptVerbs("OPTIONS")]
public HttpResponseMessage Options()
{
var resp = new HttpResponseMessage(HttpStatusCode.OK);
resp.Headers.Add("Access-Control-Allow-Headers", "X-Requested-With, Content-Type, Accept");
resp.Headers.Add("Access-Control-Allow-Origin", ConfigurationManager.AppSettings["MSOContent"]);
resp.Headers.Add("Access-Control-Allow-Credentials", "true");
return resp;
}
一定有什麼東西在被殺害在某些形式的請求HTTPS協議。任何幫助將不勝感激。