zoukankan      html  css  js  c++  java
  • 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);
  • 相关阅读:
    SP1812 LCS2
    SP1811 LCS
    P3804 【模板】后缀自动机
    P3808 【模板】AC自动机(简单版)
    P3879 [TJOI2010]阅读理解
    P2602 [ZJOI2010]数字计数
    P4719 【模板】动态dp
    P1122 最大子树和
    P3554 [POI2013]LUK-Triumphal arch
    P3565 [POI2014]HOT-Hotels
  • 原文地址:https://www.cnblogs.com/-Bloom/p/10282043.html
Copyright © 2011-2022 走看看