gpt4 book ai didi

javascript - CORS 预检选项请求返回错误,但 POST 仍在发送

转载 作者:行者123 更新时间:2023-11-28 09:26:01 24 4
gpt4 key购买 nike

我正在使用 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(内部服务器错误)405(不允许的方法)

收到此错误后,我希望浏览器忽略 POST 请求并返回错误,但是:

在 Chrome 和 IE 中,仍会发送 POST 请求(服务已正确配置为处理该请求)并收到响应。

在 Firefox 中,POST 仅返回错误。

有人可以解释一下为什么这在 Chrome 中有效吗?我本来希望它的行为与 Firefox 一样。

感谢您提前提供的任何帮助。

最佳答案

有一个bug in ChromeWebKit即使 OPTIONS 请求失败也会发送后续请求。

Firefox 正确遵循 CORS 规范,一旦预检失败就会取消请求。

关于javascript - CORS 预检选项请求返回错误,但 POST 仍在发送,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14378813/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com