我有一个REST服务,为JS应用程序提供JSON数据。在身份验证期间,服务器设置名为token =的HttpOnly cookie并设置HttpOnly标志。 HttpOnly标志在浏览器的开发人员工具中可见。
但是,当JS应用程序将下一个请求(例如GET)发送到REST服务器时,我看到附加了令牌,但我没有看到浏览器设置了HttpOnly标志。这是预期的行为吗?我查看了一些文档,但未找到具体的迹象表明这是预期的。我期待浏览器保留HttpOnly标志ON配置。
在我调用cookies.isHttpOnly()时,在服务器端,我得到了错误。鉴于我已经设置了相同的令牌,这不应该是真的。
以下是我的观察:
从REST服务收到的HTTP响应标头:
标题名称:SET-COOKIE
内容: 标记= eyJhbGciOiJIUzUxMiJ9.eyJzdWIiOiIxIiwicm9sZXMiOiJBRE1JTixVU0VSIiwiZXhwIjoxNTEyMzQ1MTM.LqBlD4pdbi9mHH1CWw52US77oefZjo40e7T02lTp7oEaMGslY71INB9WwuhETiQ;最大年龄= 2592000;过期=星期日,03-DEC-2017 23时52分16秒GMT;路径= /;的HttpOnly
客户端发送到REST服务的HTTP请求标头:
标题名称:Cookie
内容: 标记= eyJhbGciOiJIUzUxMiJ9.eyJzdWIiOiIxIiwicm9sZXMiOiJBRE1JTixVU0VSIiwiZXhwIjoxNTEyMzQ1MTM.LqBlD4pdbi9mHH1CWw52US77oefZjo40e7T02lTp7oEaMGslY71INB9WwuhETiQ