token的原理及jwt的使用

一、简介

  • 概述
    • token 时候服务端生成并返回给 HTTP 的 一串 加密字符串,token 中保存着 用户信息 
  • 作用
    • 实现会话控制,可以识别用户身份,主要用于 移动端APP
  • 工作流程
    • 服务端在校验了用户提交的信息后,没问题后再创建 token ,再将 token 返回给客户端。后续继续发送请求时后,客户端手动携带 token 传递给服务器。服务器再对 token 进行校验 ,提取用户信息,进而识别用户身份。
    • token  手动携带
    • cookie 自动携带
  • 特点
    • 服务端压力小:数据存储在服务端
    • 相对安全:数据加密;可以避免CSRF(跨站请求伪造)
    • 扩展性更强:服务间可以共享;增加服务节点简单

二、jwt的介绍与使用

JWT(JSON WEB TOKEN) 是 跨域认证解决方案,可用于 token 的身份验证

1. 下载包

npm i jsonwebtoken

2.导入 jwt

const jwt = require('jsonwebtoken')

3. 创建 token

// let token = jwt.sign(用户数据,加密字符串,配置对象)
let token = jwt.sign({
    username: 'zzz'
}, 'jizhangben', {
    //生命周期,单位是秒
    expiresIn: 60
})
console.log(token);

4. 校验token

//注释掉生成模块,将输出内容放置 t 
let t = '输出内容'
jwt.verify(t, 'jizhangben',(err,data)=>{
    if(err){
        console.log('校验失败');
    }
    console.log(data);
    //{ username: 'zzz', iat: 1682399954, exp: 1682400014 }
})

三、本地域名

3.1 原理

在地址栏输入 域名  后,浏览器发送请求,hosts文件中配置ip和域名的映射,所以先到hosts文件查找 域名 对应的 ip 地址。

如果存在,则向对应的 ip 地址发送请求。

如果不存在,浏览器会先进行 DNS 查询,获取该域名对应的IP 地址。请求会发送到DNS服务器,然后返回对应的 IP 地址给客户端,浏览器将报文发给指定 IP 的主机。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

才不吃胡萝卜嘞

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值