我们知道HTTP协议是无状态的,那么真的就没有办法让他有记忆了吗?我们可以通过Cookie、Session和Token来稍加弥补HTTP没有记忆的问题。本文相对比较基础和简单,一起加油!
一、Cookie我们先来聊聊Cookie。
用户浏览器第一次访问服务器的时候,服务器不认识本次请求身份,因此可以创建一个身份标识数据,格式是”key=value“放到Set-Cookie字段里,随着响应报文一同发给浏览器。
浏览器收到响应报文后,看到了Set-Cookie,知道是服务器返回的身份标识数据,就会保存起来。用户下次打开浏览器的时候,如果这个身份标识数据还在,浏览器则可以直接使用它。
我们用yummyfood商城项目为例,其中购物车的信息和用户信息都会保存在Cookie中,我们来下效果:
如何来实现的呢?我们拿用户信息的Cookie为例。
在JAVA后端代码中,拿到用户名密码后,进行校验,校验通过后生成Cookie写入HttpServletResponse返回给前端浏览器。当然了,前端JS也是可以设置Cookie的。
接口层:
ApiOperation(value="用户登录",notes="用户登录",