在浏览器的http的
GET
,
POST
的跨域请求中,添加自定义头部,发送不是字符串,fromData的数据时,都是非简单请求。浏览器都预先发出OPTIONS(预检安全请求)。所以我们在axios中添加自定义头部时候需要后端返回OPTIONS请求允许才进行POST或GET请求。
后端中只需要对OPTIONS请求做出允许自定义头部和状态200即可。
if(req.method==='OPTIONS'){
res.writeHead(200,{
//允许跨域
"Access-Control-Allow-Origin":"*",
"Access-Control-Allow-Credentials":"true",
//允许请求类型
"Access-Control-Allow-Methods":"*",
//允许自定义头部
'Access-Control-Allow-Headers':"*",
'Access-Control-Expose-Headers':'*'
})
res.end();
}