JWT 认证流程图解
JWT 认证流程是指在使用 JWT 作为认证方式时,用户在登录成功后,服务器生成一个 JWT 令牌,并将其返回给用户。用户在后续的请求中携带 JWT 令牌,服务器通过验证 JWT 令牌来判断用户是否已登录。JWT 认证流程图解:
1、用户登录。
用户输入自己的用户名和密码,点击登录按钮。
2、浏览器将用户的登录信息发送到服务器进行验证。
浏览器使用HTTP协议,将用户的用户名和密码作为请求参数,发送到服务器的登录接口。
3、服务器验证用户信息,创建并签署JWT。
服务器收到浏览器的请求后,检查用户名和密码是否正确。如果正确,服务器会生成一个包含用户信息和有效期的JWT,并使用密钥对其进行签名。签名的目的是防止JWT被篡改或伪造。
4、服务器将带有JWT的cookie发送回浏览器。
服务器将创建的JWT作为响应的一部分,设置到浏览器的cookie中。cookie是一种可以在浏览器和服务器之间传递数据的机制,它可以保持用户的登录状态。
5、用户可以查看页面,浏览器存储了带有JWT的cookie。
用户登录成功后,可以查看服务器提供的页面。浏览器会将带有JWT的cookie保存在本地,以便后续的请求使用。
6、当用户尝试访问受保护资源时,浏览器会将请求和带有JWT的cookie发送到服务器。
用户如果想要访问服务器的某些受保护的资源,比如个人信息,订单,购物车等,浏览器会将请求和带有JWT的cookie一起发送到服务器的相应接口。
7、服务器验证JWT,确认用户身份。
服务器收到浏览器的请求后,会从cookie中提取JWT,并使用密钥对其进行验证。验证的目的是检查JWT是否有效,是否过期,是否被篡改或伪造。如果验证通过,服务器会确认用户的身份和权限。
8、验证成功后,服务器向浏览器提供所请求的数据。
服务器根据用户的身份和权限,返回所请求的数据给浏览器。浏览器收到数据后,会显示在页面上,供用户查看和操作。
JWT 认证是一种简单、高效的认证方式,具有跨域、安全性高、效率高等优点。在实际应用中,可以根据具体的需求进行选择。
更新于:4个月前