• Token


    Token

      在计算机身份认证中是令牌的意思,Token是服务端生成的一串字符串,当第一次登录后,服务器生成一个Token便将此Token返回给客户端,以后客户端只需要带上这个Token前来请求数据即可,不用再带上用户名和密码。

      使用基于Token的身份验证方法,在服务端不需要存储用户的登录记录,大概流程为:

    1> 客户端使用用户名跟密码请求登录

    2> 服务端收到请求,去验证用户名与密码

    3> 验证成功后,服务端会签发一个 Token,再把这个 Token 发送给客户端

    4> 客户端收到 Token以后可以把它存储起来,比如放在 Cookie 里或者 Local Storage

    5> 客户端每次向服务端请求资源的时候需要带着服务端签发的 Token

    6> 服务端收到请求,然后去验证客户端请求里面带着的 Token,如果验证成功,就向客户端返回请求的数据。

      Token的主要作用就是用来做身份验证的。

      使用Token的目的是为了减轻服务器的压力,减少频繁的查询数据库。持久登录,但是也是有时间限制的。

      Token主要分为:header(头部)payload(负载)secret(秘钥)

              headertoken的类型。(一般格式不写)

              payload:属性:iss(发行者)exp(过期时间)username“”....

              secret:秘钥,加盐。

      secret会将headerpayload随机拼接在一起,生成一个字符串,这个字符串是加密的。

    顺序:

    1 //第一步  token
    2 const JWT = require("jsonwebtoken");
    3 //第二步  token
    4 let token =  JWT.sign(payload,secret,{expiresIn:"1h"})
    5 res.cookie("token",token);
    6 res.cookie("user",username);
  • 相关阅读:
    [转] 数学原理浅谈一下《黑客帝国》
    [转] 应聘Java笔试时可能出现问题及其答案(第八部分)
    经典排序之堆排序
    求全排列算法简单的实现
    求一个整数因式分解
    adk环境变量配置
    经典排序之希尔排序
    快速求幂算法
    判断一个数字是否为素数的基于C语言的算法
    高次幂求模
  • 原文地址:https://www.cnblogs.com/-Bloom/p/10282043.html
Copyright © 2020-2023  润新知