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);
  • 相关阅读:
    1、一条sql查询语句的执行过程
    go 内存分配
    GO Json
    gorm CRUD:读写数据
    go 基于切片的队列实现
    go的错误处理
    grpc
    sqlalchemy 判断字段是否存在
    定时函数
    用Python获取Linux资源信息的三种方法
  • 原文地址:https://www.cnblogs.com/-Bloom/p/10282043.html
Copyright © 2011-2022 走看看