后端写好,前端写好,postman测试作好,一切都没有问题,
可是
实际用axios来实现登录功能的时候问题就来了....
什么状况?登录根本用不了啊!每次都提示我没有登录!
代码没问题啊,postman都测试过了
迷茫这去找谷歌百度帮助...
发现问题是...前端
一个登陆的场景,用axios发送post请求去登陆,能成功返回数据,可是用做权限验证的cookie就是没有保存,经查阅,axios 默认不发送cookie,跨域也是一个缘由,须要全局设置
因此咱们须要这么设置axios.defaults.withCredentials = true
ios
感受能够了,
可是axios
竟然告诉我这么作以后,竟然告诉我Access-Control-Allow-Origin
不能是*
,好,我改res.header('Access-Control-Allow-Origin', 'http://localhost:8080');
后端
感受能够了,
可是跨域
仍是不行,他还要求我Access-Control-Allow-Credentials
不能是''
好吧...我确实没写...
那就加吧cookie
res.header('Access-Control-Allow-Credentials', 'true');
感受能够了,
可是,
不对,
没有可是了!post
axios能够顺利实现登录功能了...
总结一下,关键基本就是下面两个图的代码...测试