簡體   English   中英

CORS預檢OPTIONS請求返回錯誤,但仍在發送POST

[英]CORS preflight OPTIONS request returning error, but POST still being sent

我正在使用jQuery ajax從我的站點向asmx服務發出跨域請求,如下所示:

$j.ajax({
  url: svcURL,
  type: "POST",
  data: xml,
  contentType: "text/xml",
  dataType: "text",
  success: function(d) {
    alert(d);
  },
  error: function(a, b, c) {
    alert("error");
  }
});

POST請求之前是預檢OPTIONS請求,該服務當前未配置為處理該請求,因此它返回500 (Internal Server Error)405 (Method Not Allowed)

收到此錯誤后,我希望瀏覽器隨后忽略POST請求並返回錯誤,但是:

在Chrome和IE中 ,仍然發送POST請求(已正確配置服務以進行處理)並收到響應。

在Firefox中POST僅返回錯誤。

有人可以解釋為什么該功能可以在Chrome瀏覽器中使用嗎? 我本來希望它表現出Firefox的功能。

感謝您的任何幫助。

即使OPTIONS請求失敗,ChromeWebKit中也存在一個錯誤,錯誤會發送后續請求。

Firefox會正確遵循CORS規范,並且在預檢失敗后會取消請求。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM