前端通过使用axios请求后台服务,默认是不带cookie上报的,要想带上,需要进行如下设置:1
axios.defaults.withCredentials = true
然后后端服务也要做些调整,比如Tornado需要设置1
2self.set_header("Access-Control-Allow-Credentials", "true")
self.set_header("Access-Control-Allow-Origin",origin)
如果不想在程序中设置的话,可以调整一下nginx的配置,比如某个location下增加如下配置:1
2
3
4
5
6add_header 'Access-Control-Allow-Credentials' "true";
add_header 'Access-Control-Allow-Origin' "$http_origin";
add_header 'Access-Control-Allow-Headers' '*';
add_header 'Access-Control-Max-Age' 1000;
add_header 'Access-Control-Allow-Methods' 'POST, GET, OPTIONS';
add_header 'Access-Control-Allow-Headers' 'authorization, Authorization, Content-Type, Access-Control-Allow-Origin, Access-Control-Allow-Headers, X-Requested-By, Access-Control-Allow-Methods';