1
在浏览器的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();
    }

杨周龙
789 声望5 粉丝

Pong!一个大BUG