问各位大佬一个问题,为什么获取不到浏览器请求中的cookies呢,是我写法有问题吗?想法:登录,响应中添加cookies’—》访问首页,获取cookies’,然后再执行一些业务方法。疑惑的是浏览器请求头中有cookies,但是在controller层接收不到,图片如下
代码
@RestController
public class UserController {
@GetMapping("/index")
public String index(HttpServletRequest request) {
// 获取请求中的cookies,
//业务逻辑
return "欢迎来到首页";
}
@GetMapping("/login")
public String login(HttpServletResponse response) {
//登录逻辑
//将用户名添加到浏览器的cookies里
response.addCookie(new Cookie("username","coy"));
return " 登录成功";
}
}
登录
首页


获取不到cookies’

debug过程
执行org.apache.coyote.http11.Http11Processor#service方法时还有传过来的cookies

执行org.apache.catalina.connector.CoyoteAdapter#service方法时cookies就没了,什么情况呢这是

没调用获取cookie的方法,所以看不到
Cookie[] cookies = request.getCookies();
修改后代码
public String index(HttpServletRequest request) {
// 获取请求中的cookies,
Cookie []cookies=request.getCookies();
//业务逻辑
return "欢迎来到首页";
}
523



被折叠的 条评论
为什么被折叠?



