Token
是小Q呀~
一个天天想请假,却月月满勤的无敌美少女。
展开
-
使用 token 认证就不会有任何问题了吗?
前端会有让 token 失效的需求,比如登出,因此需要向后端发请求,让后端保存一个让 token 失效的信息,比如后端存在数据库中,那么每次前端发请求的时候都要去查一次数据库,这显然与我们初衷不符。后端可以在生成 token 的时候给 token 配置一个失效时间,一般而言,这个失效时间很短(0.5-1h),这样,即使 token 在前端泄漏,但是由于其有效期很短,因此并不会造成很大的安全事故。然后 token 很短的话,对用户体验很不好,很可能造成用户在使用的过程中被强制退出,让用户重新登录,因此 acc原创 2021-12-24 15:11:34 · 868 阅读 · 0 评论 -
为什么选择 token 的方式而不用 session?
首先我们看一下基于 session 的登陆会遇到什么问题。我们可能有多个后端比如现在的 XX项目,有多个后端:3 个 django 后端,1 个 java 后端。 只有一个前端,后端都是在同一个域名下,所以前端发送给后端的 sessionid 其实都是一样的,那么为了实现共享登陆的状态,必须实现多服务器共享 session.那么如何实现多服务器共享 session?解决 session 的共享的方案通常是把这个 sessionid 存储在 cache(对外暴露的是键值对的形式),比如第三方存原创 2021-12-23 16:17:55 · 3691 阅读 · 1 评论 -
何为 Token?什么是基于 token 的认证?
何为 Token?token 其实就是一个令牌,一个 token 其实就是服务器生成的一段数据,包含了唯一性识别一个用户的信息,一般被生成为一长串随机字符和数字。什么是基于 token 的认证?Token-based authentication/authorization(基于 token 的认证和授权)是这样一种技术:当用户在某处输入了其用户名和密码之后,服务器会生成一个唯一的已加密的 token, 该 token 会替代登录凭证,用以访问受保护的页面和资源。 这种方式的要点是每一次向后端发请求时原创 2021-12-23 16:11:36 · 687 阅读 · 0 评论