将 Cookie 的 SetSecure 设置为 true

use*_*796 3 java cookies spring-mvc spring-security jakarta-ee

我正在尝试创建一个cookiewith SetSecureas true。这在保存或更新方法和系统重定向到错误页面/抛出 403 错误中产生问题。如果我删除SetSecure然后它工作正常。

Cookie ck= new Cookie("key",value);
ck.setsecure(true);

response.addCookie(ck);// HttpResponse
Run Code Online (Sandbox Code Playgroud)

Q1)只设置可以secure flag to true吗?还是我必须在我的webapp.

Q2)我正在使用http连接到我的webapp. 这SetSecure flag适用于http protocol吗?或者它必须是Https

提前致谢。

小智 5

安全标志为 true 的 cookie 仅意味着如果连接未加密(例如在 http 协议中),另一端的浏览器不会将其发送到服务器。“安全标志的目的是防止 cookie 因以明文形式传输 cookie 而被未授权方观察到。”

所以在你的情况下,cookie 在创建后永远不会被发送回服务器,这就是你收到错误的原因。如果出于某种原因确实需要使用此标志,则应使用 https 服务器。