首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >我在我的客户站点上找不到我的Spring Cookie

问我在我的客户站点上找不到我的Spring Cookie
EN

Stack Overflow用户
提问于 2020-08-03 06:34:33
回答 1查看 2.6K关注 0票数 0

我使用Spring 2.3.1.RELEASE并试图向客户端发送一个httpOnly Cookie。问题是Chrome没有展示任何饼干。

邮递员的情况也一样。

一件事是,在邮递员响应日志中,我可以看到头部Set-Cookie及其值,而在Chrome上,console.log(res.headers);给出了undefined

这是我的服务器代码

代码语言:javascript
复制
public @ResponseBody ResponseEntity<?> sendCookie(HttpServletRequest request,
    HttpServletResponse response) {

    Cookie cookie = new Cookie("cookie", "one_cookie_for_you");

    cookie.setMaxAge(7 * 24 * 60 * 60); // expires in 7 days
    cookie.setSecure(true);
    cookie.setHttpOnly(true);

    response.addCookie(cookie);

    return ResponseEntity.ok("OK");
}

我做错什么了吗?谢谢你的帮助。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-08-03 07:33:04

多亏了@M.迪辛,我才能解决这个问题,原来是我缺乏知识。再次谢谢你,这是解决办法。

由于我的客户端位于本地主机上,这是非https的,所以必须将cookie的安全标志设置为false (类似于cookie.setSecure(false); ),这样浏览器就可以存储cookie,即使协议没有安全。

其次,我的代码缺少cookie.setPath("");和cookie.setDomain(""),这使得Spring自动设置cookie的路径到api的映射。将其域名和路径设置为"/",可以使cookie在任何请求中发送。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63224760

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档