维护网站是什么工作,邯郸外贸网站建设,网站空间购买哪家好,ui设计师个人网站建设一、什么是Token#xff1f;
Token#xff0c;也称为“令牌”#xff0c;是服务端生成的一串字符串#xff0c;以作客户端进行请求的一个令牌#xff0c;当第一次登录后#xff0c;服务器生成一个Token便将此Token返回给客户端#xff0c;以后客户端只需带上这个Token前…一、什么是Token
Token也称为“令牌”是服务端生成的一串字符串以作客户端进行请求的一个令牌当第一次登录后服务器生成一个Token便将此Token返回给客户端以后客户端只需带上这个Token前来请求数据即可无需再次带上用户名和密码。比如如下形式
39faf62271944fe48c4f1d69be71bc9a
二、为什么使用Token
传统验证用户身份的方式大多为基于服务器验证的方式即cookiesession的方式由于HTTP协议是无状态的导致程序需要验证每一次请求从而辨别客户端的身份。
用户登录成功将其信息存入session中用户每次请求都会将携带session id的cookie一起发送器服务端进行校验随着Web、应用程序、以及移动端的崛起这种验证方式弊端逐渐显现尤其是在可扩展性方面。
引发的问题比如用户增多导致内存开销较大、CORS(跨域资源共享)以及CSRF(跨站请求伪造)等。
引入Token验证机制后请求会发送token而不再是发送cookie能有效够防止CSRF即使在客户端使用cookie存储token但cookie也只有存储功能而不再具备验证功能因此安全性得到了极大的提高。
而且只要token设计的足够复杂除非用户泄露否则几乎没有被破解的可能加上token是有时效的在有限的时间加上有限的算力更是无懈可击这也类似于加密资产比如比特币钱包对应的私钥安全性极高。
另外Token可以有效减轻服务器的压力减少频繁的查询数据库使服务器更加健壮。
三、基于Token的身份验证流程
客户端使用用户名跟密码请求登录
服务端收到请求去验证用户名与密码
验证成功后服务端会签发一个 Token再把这个 Token 发送给客户端
客户端收到 Token 以后可以把它存储起来比如放在 Cookie 里或者 Local Storage 里
客户端每次向服务端请求资源的时候需要带着服务端签发的 Token
服务端收到请求然后去验证客户端请求里面带着的 Token如果验证成功就向客户端返回请求的数据
四、Token的使用
在我们做用户权限认证的时候每次请求都会将Token放在请求头中一起发送到服务器端服务器端通过拦截器进行拦截校验如果不存在Token、Token错误或者Token过期则拒绝请求有效则返回相应的返回结果。
最后感谢每一个认真阅读我文章的人礼尚往来总是要有的虽然不是什么很值钱的东西如果你用得到的话可以直接拿走 软件测试面试小程序
被百万人刷爆的软件测试题库谁用谁知道全网最全面试刷题小程序手机就可以刷题地铁上公交上卷起来
涵盖以下这些面试题板块 1、软件测试基础理论 2、web,app接口功能测试 3、网络 4、数据库 5、linux 6、web,app接口自动化 7、性能测试 8、编程基础9、hr面试题 10、开放性测试题11、安全测试12、计算机基础 这些资料对于【软件测试】的朋友来说应该是最全面最完整的备战仓库这个仓库也陪伴上万个测试工程师们走过最艰难的路程希望也能帮助到你