基于token的身份验证

基于Token的身份验证在现代Web应用中广泛使用。它通过服务器生成并发送给客户端的令牌来验证用户身份,避免了传统session带来的资源消耗。在跨域场景下,Token存储在localStorage中,方便请求时携带。当服务器返回401,前端会检测到Token过期,重新引导用户登录。这种方式简化了前端验证登录的流程,减轻服务器负担。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

关于token

what is token?

token相当于是一个令牌,在用户登录的时候由服务器端生成(基于用户名、时间戳、过期时间、发行者等信息进行签名),然后发放给客户端,客户端将令牌保存,在以后需要登录验证的请求中都需要将令牌发送到服务器端进行验证,如果验证成功,则返回数据。目前很多大型网站都在使用基于token的验证方式:github,Facebook,Twitter…

why token?
  1. 从服务器端的角度来讲,传统的登录方式下,服务器端需要为登录的用户生成一个session,会占用服务器的资源;然而在token的验证方式下,服务器端不需要为登录的用户维护一个session来进行通信验证,只需要在登录时生成一个token信息,在请求时验证token的有效性即可。
  2. 从跨域开发的角度来讲,由于浏览器的安全机制,在跨域环境下,cookie的传输并不是很方便,同时牵扯到安全问题;然而我们可以通过将token存放在localStorage中,每次发送请求的时候从localStorage中获取发送给服务器端。
大致流程
  1. 客户端使用用户名密码登录。
  2. 服务端收到请求,去验证用户名与密码。验证成功后,服务端会签发一个 Token,把这个 Token 发送给客户端。
  3. 客户端将收到的Token存储起来。(cookie或者localStorage)
  4. 客户端每次需要登录验证的请求都需要带着Token发送给服务器端。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值