vue-element-admin Axios跨域请求会话不匹配问题场景再现前端: vue-cliaxiosnode.js vue-element-admin
后端: Spring Boot
数据库: MySQL Redis
具有用户注册的验证码功能时,前端发起请求,后端生成验证码图像并发送到前端,验证码字符串存储在session中,但在前端输入表单发送注册请求时
解决步骤设置代理(根目录下的vue.config.js文件,如果没有,则新建) ) )。
module.exports={ devserver : }//代理proxy: { '/app': { //目标API地址target : ' http://localhost 336088
引入axios后,axios.defaults.with credentials=true; 在后端过滤器中添加两行代码
publicclassalloworiginintercepterimplementshandlerinterceptor { @ overridepublicbooleanprehandle (httpservletrequestrestrequestrequestrequest,) 注释掉objecthandler(//过滤器//此语句//response.setheader (访问控制- allow-origin )//这两个语句response response.setheader (' access-control-allow-credentials ',' true ' ); //----------- response.setheader (访问---控制----AAR response.setheader (访问-控制- ) 返回真; }问题解决了。
见文章https://www.cn blogs.com/guangixn/p/9843946.html