一、前言
前提:该请求下是在跨域情况下,并且跨域解决方案为cors。
在已经将值存入session的情况下,使用request.getSession().getAttribute(key)
获取的值却为null
,经查证,原来是跨域情况下,默认不允许传送cookie。因此,需要对前后端进行设置。
二、设置
前端:
axios.defaults.withCredentials=true
后端:
response.setHeader("Access-Control-Allow-Credentials","true");
当我这样设置之后还是报错,后来根据报错提示找到原因:不能设置"Access-Control-Allow-Origin"为"*",故修改为网站的地址:
response.setHeader("Access-Control-Allow-Origin", "http://localhost:8081");
三、总结
经过上述设置之后,request.getSession().getAttribute(key)
成功获取到数据。