Javascript ‘;内容类型’;根据页眉‘;访问控制允许标头’;来自CORS飞行前响应
我正在尝试做一个简单的post呼叫,将数据发送到mailgrid,以便自动将邮件发送给所选人员。但由于我对一般的API调用还比较陌生,所以有一些事情我不明白 以下是我尝试拨打电话时遇到的错误:Javascript ‘;内容类型’;根据页眉‘;访问控制允许标头’;来自CORS飞行前响应,javascript,reactjs,api,axios,Javascript,Reactjs,Api,Axios,我正在尝试做一个简单的post呼叫,将数据发送到mailgrid,以便自动将邮件发送给所选人员。但由于我对一般的API调用还比较陌生,所以有一些事情我不明白 以下是我尝试拨打电话时遇到的错误: const sendMail = () => { axios.post(`https://{{private_url}}/public/mail/{user_id}/{mail_id}`, { headers: { "Acces
const sendMail = () => {
axios.post(`https://{{private_url}}/public/mail/{user_id}/{mail_id}`, {
headers: {
"Access-Control-Allow-Headers": "Content-Type",
},
data: {
first_name: data.first_name,
last_name: data.last_name,
message: data.message,
email: data.email,
}
})
.then(response => {
console.log(response);
console.log(response.headers)
close();
})
.catch(error => {
console.log(error);
console.log(error.headers)
});;
}
根据CORS飞行前响应中的标题“访问控制允许标题”,不允许标题“内容类型”
及
CORS请求未成功
他是执行调用的我的函数:
const sendMail = () => {
axios.post(`https://{{private_url}}/public/mail/{user_id}/{mail_id}`, {
headers: {
"Access-Control-Allow-Headers": "Content-Type",
},
data: {
first_name: data.first_name,
last_name: data.last_name,
message: data.message,
email: data.email,
}
})
.then(response => {
console.log(response);
console.log(response.headers)
close();
})
.catch(error => {
console.log(error);
console.log(error.headers)
});;
}
我在监督什么?我在哪里出错?您使用的headers对象不正确<代码>内容类型是单独的。请像这样使用:
headers: {
"Access-Control-Allow-Headers": "*", // this will allow all CORS requests
"Access-Control-Allow-Methods": 'OPTIONS,POST,GET', // this states the allowed methods
"Content-Type": "application/json" // this shows the expected content type
},
正如他所说:
使用CORS的HTTP请求失败,因为HTTP连接在网络或协议级别失败。该误差与CORS没有直接关系,而是某种基本网络误差
在许多情况下,它是由浏览器插件(例如广告拦截器或
隐私保护器)阻止请求或VPN插件更改请求的来源
如果有,您可以禁用它
服务器还可以阻止uknown来源,从而导致访问控制允许来源错误 谢谢你把它清理掉!但我还是犯了同样的错误你犯了什么错误?这是CORS的问题吗?您需要在服务器上启用该功能。如果它不是您的服务器,那么您将无法执行任何操作,因为这是一项安全措施。请注意:此错误:
原因:根据CORS飞行前响应的标题“Access Control Allow Headers”,标题“content type”是不允许的。
此外,我有一个CORS插件,当我激活它时,我的api调用工作没有任何问题。CORS Everywhere是FFS的插件,您需要将该头添加到服务器代码中,然后添加到响应中。你拥有服务器吗?