登录态,票据和token是个什么玩意儿?
来源:互联网 发布:java线程池下载多任务 编辑:程序博客网 时间:2024/05/21 11:19
登录态,票据和token是个什么玩意儿? 我们慢慢来说。
以微博为例, 当用户在微博app中输入账号和密码登录后, 微博后台会进行验证, 看看账号和密码是否匹配, 如果匹配, 就登录成功。 用户后续在微博中发帖的时候, 就不需要再输入密码了, 只需要输入内容即可。 这里有个问题, 如果是坏人用别人的账号伪造发帖请求呢? 岂不是代替比人发帖了? 荒唐得很啊。
微博后台不能让用户每次发帖都携带密码啊, 怎么办呢? 实际上, 用户登录成功后, 后台会生成一个特定的信息(可以理解为一个字符串), 这个字符串就是一个令牌, 是一种身份和状态的标志。用户发帖的时候, 客户端不需要携带密码, 而是携带这个令牌就行了, 微博后台验证这个令牌信息, 从而来确定发帖请求是否是用户自己真正的请求, 万事大吉。
可见, 令牌是一种身份, 是一种登录成功的状态, 这个令牌其实就是token, 在很多场合, 也可以叫票据。所以, 你可以认为, 票据==token.
那登录态又是什么意思呢? 登录态有两个含义:
1. 指登录的状态。 比如大家经常会看到提示登录态已经失效, 登录态应过期, 意思就是说, 现在是退出的状态, 而非登录的状态。
2. 指票据, 或者说是token. 微博后台的同学可能会说: app传过来的登录态过期了啊。 所以, 这里的登录态是指登录态信息, 说白了, 就是指票据, 也就是token.
对了, 当微博用户登录成功后, 进行发帖时, 出了需要携带登录态票据 /token外、发帖内容外, 还需要携带登录账号吗? 其实可带可不带, 带了也没用, 后台是不能信任这个账号的, 因为谁都可以伪造。 那后台怎么知道是哪个账号发的呢? 很简单, 在进行登录态票据/token校验的时候, 能从登录态票据/token中解出用户账号。 所以, 通常的方式是, app端携带账号、登录态票据/token以及帖子信息, 后台只能相信于从登录态票据/token校验中获取的账号, 而不能直接相信app给的账号。
思考一下, 为什么能从登录态票据/token中解出账号信息呢? 很显然, 在微博后台肯定有绑定关系啊!
最后, 我们来看下, 对于小程序而言, 开发者有可以申请到appID和appKey, 顺便可以获取用户的openID和后台授权的token, 其实, 根据token, 也是能获取到openID的, 这与上面微博的案例,何其相似。
- 登录态,票据和token是个什么玩意儿?
- 串口是个什么玩意儿?
- https是个什么玩意儿?
- IDoc是个什么玩意儿
- gamma校正到底是个什么玩意儿
- hadoop到底是个什么玩意儿????
- 汉字编码到底是个什么玩意儿?
- 谈编程是个什么玩意儿
- JAVA设计模式是个什么玩意儿
- 第二章 网络是个什么玩意儿
- 数据罗盘是个什么玩意儿?
- java 垃圾回收中的root是个什么玩意儿?
- 毕业设计2-我要做的是个什么玩意儿
- JAVA设计模式是个什么玩意儿_05_原型模式
- 网络编程入门笔记1——socket是个什么玩意儿
- JAVA设计模式是个什么玩意儿_01_工厂方法模式
- JAVA设计模式是个什么玩意儿_02_抽象工厂模式
- JAVA设计模式是个什么玩意儿_03_单例模式
- maven-springmvc-mybatis-log4j-mysql整合配置-日志配置输出执行SQL
- Mysql中如何设置日期字段默认值为当前日期
- 牛顿冷却定律--画像&时间衰减系数
- 【POJ】3494
- X86 寄存器 结构图
- 登录态,票据和token是个什么玩意儿?
- springboot xml简单实例
- 软件测试概念及分类整理汇总
- Django 开发学习笔记(3)- 编写自定义的页面
- 测试系列-CMMI 知识扫盲篇
- 算法练习(3):Median of Two Sorted Arrays
- 多线程同步机制2-深入理解synchronized关键字
- 京东笔试题 神奇数
- springboot mail简单实例