2019年10月24日写了这篇文章。饼干在英语中是“小甜点”的意思。在这样的节日里,首先祝大家节日快乐,身体健康,家庭幸福!然后看看我们今天的甜点。本文将介绍如何在Spring Boot应用程序中读取、设置和删除HTTP cookie。
作者写的很仔细,希望对你有帮助。如果你看完这篇文章觉得有所收获,请关注并转发!您的支持是我不竭的创作动力!

一.导言
这篇文章的大纲
读取HTTP cookie
设置HTTP cookie
读取所有cookie[] []
设置cookie的过期时间。
Https和cookie
Httponly cookie
删除cookie
HTTP cookie是服务器存储在用户浏览器中的少量数据。服务器端应用程序在返回浏览器请求响应时设置cookie,浏览器存储cookie并在下一个请求一起发送时自动将其带回服务器端应用程序。
cookies提供了一种在服务器和浏览器之间交换信息的方式,以管理会话、记住用户偏好并跟踪整个站点的用户行为。cookies在一定程度上缓解了服务器端的压力,因为部分数据存储在浏览器端,所以这部分数据不可能是与应用安全相关的数据。
第二,读取HTTP cookie
Spring框架提供了@cookievalue注释来获取HTTP cookie的值,可以直接在控制器方法参数中使用。

在上面的代码片段中,请注意defaultValue = "Atta "。如果没有设置默认值,也没有找到名为username的cookie,Spring将抛出Java . lang . illegalstateexception异常。
三。设置HTTP cookie
要在Spring Boot中设置cookie,我们可以使用HttpServletResponse类的addcookie方法。您需要做的就是创建一个新的cookie对象,并将其添加到响应中。
四。读取所有cookie[] []
除了使用@cookievalue注释,我们还可以使用HttpServletRequest类作为控制器方法参数来读取所有cookies。该类提供getcookies方法,该方法将浏览器发送的所有cookie作为数组返回。
第五,设置cookie的到期时间
如果没有为cookie指定过期时间,它的生命周期将持续到会话过期。这种cookie称为会话cookie。会话cookie保持活动状态,直到用户关闭浏览器或清除cookie。但是,您可以重写此默认行为,并使用类的setMaxAge方法来设置cookie的过期时间。
现在,usernamecookie不会因为版本结束而过期,但在接下来的7天内仍然有效。传递给setMaxAge方法的过期时间以秒为单位。到期日期和时间与设置cookie的客户端相关,而不是与服务器相关。
不及物动词Https和cookie
我们需要知道一个概念:什么是安全的饼干?的安全cookie是只能通过加密的HTTPS连接发送到服务器的cookie。cookie不能通过未加密的HTTP连接发送到服务器。也就是说,如果设置了setSecure,cookie就不能在Http连接中传输,只能在Https连接中传输。
七、Httponly cookie
Httponly cookie是用来防止跨站脚本攻击的,也就是说设置了HttpOnly的cookie无法通过Javascript的document.cookieAPI访问,只能通过服务器端的服务器程序访问。

八。删除cookie
要删除cookie,您需要将Max-Age设置为0,并将cookie的值设置为null。不要将最大年龄指令值设置为-1。否则,浏览器会将其视为会话cookie。
期待您的关注。
通过搜索-索-查询“字母博客”或zimug点击M,更多精品收藏知识等着你!
这只是为了持续的知识输出。希望大家关注,评论,转发!您的支持是我不竭的创作动力!让知识产生价值,让程序员改变世界!
免责声明:本平台仅供信息发布交流之途,请谨慎判断信息真伪。如遇虚假诈骗信息,请立即举报
举报








