本文主要是介绍登录态,票据和token是个什么玩意儿?,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
登录态,票据和token是个什么玩意儿? 我们慢慢来说。
以微博为例, 当用户在微博app中输入账号和密码登录后, 微博后台会进行验证, 看看账号和密码是否匹配, 如果匹配, 就登录成功。 用户后续在微博中发帖的时候, 就不需要再输入密码了, 只需要输入内容即可。 这里有个问题, 如果是坏人用别人的账号伪造发帖请求呢? 岂不是代替比人发帖了? 荒唐得很啊。
微博后台不能让用户每次发帖都携带密码啊, 怎么办呢? 实际上, 用户登录成功后, 后台会生成一个特定的信息(可以理解为一个字符串), 这个字符串就是一个令牌, 是一种身份和状态的标志。用户发帖的时候, 客户端不需要携带密码, 而是携带这个令牌就行了, 微博后台验证这个令牌信息, 从而来确定发帖请求是否是用户自己真正的请求, 万事大吉。
可见, 令牌是一种身份, 是一种登录成功的状态, 这个令牌其实就是token, 在很多场合, 也可以叫票据。所以, 你可以认为, 票据==token.
那登录态又是什么意思呢? 登录态有两个含义:
1. 指登录的状态。 比如大家经常会看到提示登录态已经失效, 登录态应过期, 意思就是说, 现在是退出的状态, 而非登录的状态。
2. 指票据, 或者说是token. 微博后台的同学可能会说: app传过来的登录态过期了啊。 所以, 这里的登录态是指登录态信息, 说白了, 就是指票据, 也就是token.
对了, 当微博用户登录成功后, 进行发帖时, 出了需要携带登录态票据 /token外、发帖内容外, 还需要携带登录账号吗? 其实可带可不带, 带了也没用, 后台是不能信任这个账号的, 因为谁都可以伪造。 那后台怎么知道是哪个账号发的呢? 很简单, 在进行登录态票据/token校验的时候, 能从登录态票据/token中解出用户账号。 所以, 通常的方式是, app端携带账号、登录态票据/token以及帖子信息, 后台只能相信于从登录态票据/token校验中获取的账号, 而不能直接相信app给的账号。
思考一下, 为什么能从登录态票据/token中解出账号信息呢? 很显然, 在微博后台肯定有绑定关系啊!
最后, 我们来看下, 对于小程序而言, 开发者有可以申请到appID和appKey, 顺便可以获取用户的openID和后台授权的token, 其实, 根据token, 也是能获取到openID的, 这与上面微博的案例,何其相似。
这篇关于登录态,票据和token是个什么玩意儿?的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!