【问题标题】:Java Spring - Browser isnt saving http only cookieJava Spring - 浏览器不保存 httponly cookie
【发布时间】:2015-11-12 05:36:38
【问题描述】:

我正在后端使用 spring-boot 开发应用程序。我正在使用 HTTP-Only Cookie,我可以在 Response-Header 中设置它,但不能在浏览器中设置。作为响应标头 - 我得到 ​​p>

Set-Cookie:"TOKEN=eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiIyNTQiLCJyb2xlcyI6MjU0LCJpYXQiOjE0Mzk4NzQ1OTh9.3FadMRuTESc3cF4-4BRt_lQ43atwUSJmwMkY3HUWAOE;HttpOnly",

这是我的 UserController.java

String userIdString = String.valueOf(user.getId());
    String token = Jwts.builder().setSubject(userIdString)
          .claim("roles", user.getId()).setIssuedAt(new Date())
          .signWith(SignatureAlgorithm.HS256, "secretkey").compact();
 response.setHeader("Set-Cookie", "TOKEN=" +  token + ";HttpOnly");

【问题讨论】:

    标签: java spring cookies spring-boot jwt


    【解决方案1】:

    我猜你正在使用 HTTPServletResponse 对象,在这种情况下你想要#addCookie()

    http://docs.oracle.com/javaee/6/api/javax/servlet/http/HttpServletResponse.html#addCookie(javax.servlet.http.Cookie)

    【讨论】:

    • 嗨 Rob,感谢您的回复,但我也已经尝试使用 addCookie(),但结果仍然相同。 Cookie 未在浏览器上显示,但在 ResponseHeader 中可见。
    • cookie 路径和域是否与您部署的 Web 应用相匹配?如果它们不匹配,则浏览器不会将它们与网页相关联。
    • 我不太确定路径,但域与部署的 Web 应用程序匹配。我们还没有设置任何具体的路径。
    猜你喜欢
    • 2021-07-05
    • 2021-02-28
    • 1970-01-01
    • 2023-04-03
    • 1970-01-01
    • 2020-11-30
    • 1970-01-01
    • 2021-03-09
    • 2012-12-29
    相关资源
    最近更新 更多