jquery - 发出 POST 请求时如何防止触发 CORS?
问题描述
我正在发布表单数据。我不想在发送 HTTP 请求时触发 CORS。
我正在使用 jquery 的 $.ajax 调用,因此:
$.ajax({
method: "POST,
url: url,
data: e.serialize(),
cache: !1,
dataType: "json",
contentType: "application/json; charset=utf-8",
error: function(e) {
alert("Could not connect to the registration server. Please try again later."), console.log(e)
},
success: function(e) {
console.log("success")
}
})
目前,当它被调用时,我的浏览器会返回消息:
“对预检请求的响应未通过访问控制检查:请求的资源上不存在‘Access-Control-Allow-Origin’标头”
这似乎不言自明:“Access-Control-Allow-Origin”未配置为该资源的 http 标头。没有为资源启用 CORS。
没关系。这意味着我可以发送请求而无需担心 CORS,对吗?用户浏览器试图保护用户,而实际上没有必要保护。
问题是,我一直在尝试在不触发 CORS 的情况下发送请求。如何配置我的请求以防止 CORS 启动?
谢谢。
解决方案
你完全误解了CORS。CORS 不会阻止或阻止您做任何事情;相反,使用它可以让你做一些你不能做的事情(因为同源策略不允许它们)。您的错误消息告诉您,您的请求被阻止是因为您没有使用 CORS,而不是因为您使用了。与其寻求禁用 CORS,不如使用它!修改您的第二个服务器以发送Access-Control-Allow-Origin
允许第一个服务器的标头。
推荐阅读
- css - 使用过渡变换或持续时间时如何修复 CSS 背景滤镜模糊消失?[仅限铬]
- r - 如何通过多数投票规则找到不同向量之间的共同成员
- java - 如何将所有双精度值更改为随机数?爪哇
- flutter - 扑动中未定义的名称'General'
- sql - 将 INT INTO DATE 转换为计算 AGE
- firebase - 电容器盖茨比 reactjs Firebase - 如何为用户保留登录信息
- java - 如何在 Quarkus 中检测运行时的构建时间?
- c++ - 如何将通过 C++ 中的另一个类添加到 ListView、QML 的数据显示出来?
- elasticsearch - Elasticsearch 按术语值的顺序排序
- java - 如何将文本文件的行排序为具有许多不同情况的字符串数组