当前位置: 首页 > news >正文

手机网站后台管理系统东莞百度seo关键词优化

手机网站后台管理系统,东莞百度seo关键词优化,网站平台建设做好公司宣传,网站 特效一、介绍 JWT全称:JSON Web Token 官网:https://jwt.io/ 定义了一种简洁的、自包含的格式,用于在通信双方以 json 数据格式安全的传输信息。由于数字签名的存在,这些信息是可靠的 在生成 JWT 令牌时,会对 JSON 格式的数…

一、介绍

JWT全称:JSON Web Token

官网:https://jwt.io/

定义了一种简洁的、自包含的格式,用于在通信双方以 json 数据格式安全的传输信息。由于数字签名的存在,这些信息是可靠的

在生成 JWT 令牌时,会对 JSON 格式的数据进行一次编码:进行 base64 编码

1、JWT 的组成

  • 第一部分:Header(头), 记录令牌类型、签名算法等。 例如:{“alg”:“HS256”,“type”:“JWT”}
  • 第二部分:Payload(有效载荷),携带一些自定义信息、默认信息等。 例如:{“id”:“1”,“username”:“Tom”}
  • 第三部分:Signature(签名),防止 Token 被篡改、确保安全性。将 header、payload,并加入指定秘钥,通过指定签名算法计算而来

2、典型应用场景登录认证

  1. 在浏览器发起请求来执行登录操作,此时会访问登录的接口,如果登录成功之后,我们需要生成一个 jwt 令牌,一般包含用户的登录信息,如 id 值,将生成的 jwt 令牌返回给前端
  2. 前端拿到 jwt 令牌之后,会将 jwt 令牌存储起来。在后续的每一次请求中都会将 jwt 令牌携带到服务端
  3. 服务端统一拦截请求之后,先来判断一下这次请求有没有把令牌带过来,如果没有带过来,直接拒绝访问,如果带过来了,还要校验一下令牌是否是有效。如果有效,就直接放行进行请求的处理

二、生成和解析

1、依赖引入

<!-- JWT依赖-->
<dependency><groupId>io.jsonwebtoken</groupId><artifactId>jjwt</artifactId><version>0.9.1</version>
</dependency>

2、生成 JWT

代码实现:

@Test
public void genJwt(){Map<String,Object> claims = new HashMap<>();claims.put("id",1);claims.put("username","Tom");String jwt = Jwts.builder().setClaims(claims) //自定义内容(载荷)          .signWith(SignatureAlgorithm.HS256, "xtlhyl") //签名算法 .setExpiration(new Date(System.currentTimeMillis() + 24*3600*1000)) //有效期   .compact();System.out.println(jwt);//输出:如:eyJhbGciOiJIUzI1NiJd.eyJpZCI6MSwiZXhwIjoxNjcyNzI5NzMwfQ.fHi0Ub8npbyt71UqLXDdLyipptLgxBUg_mSuGJtXtBk
}

3、解析生成的令牌

@Test
public void parseJwt(){Claims claims = Jwts.parser().setSigningKey("xtlhyl")//指定签名密钥(必须保证和生成令牌时使用相同的签名密钥)  .parseClaimsJws("eyJhbGciOiJIUzI1NiJd.eyJpZCI6MSwiZXhwIjoxNjcyNzI5NzMwfQ.fHi0Ub8npbyt71UqLXDdLyipptLgxBUg_mSuGJtXtBk").getBody();System.out.println(claims);//输出:{id=1, exp=1672729730}
}

篡改令牌中的任何一个字符或者时间失效后,再对令牌进行解析时都会报错

三、JWT 工具类

public class JwtUtils {private static String signKey = "itheima";//签名密钥private static Long expire = 43200000L; //有效时间/*** 生成JWT令牌* @param claims JWT第二部分负载 payload 中存储的内容* @return*/public static String generateJwt(Map<String, Object> claims){String jwt = Jwts.builder().addClaims(claims)//自定义信息(有效载荷).signWith(SignatureAlgorithm.HS256, signKey)//签名算法(头部).setExpiration(new Date(System.currentTimeMillis() + expire))//过期时间.compact();return jwt;}/*** 解析JWT令牌* @param jwt JWT令牌* @return JWT第二部分负载 payload 中存储的内容*/public static Claims parseJWT(String jwt){Claims claims = Jwts.parser().setSigningKey(signKey)//指定签名密钥.parseClaimsJws(jwt)//指定令牌Token.getBody();return claims;}
}
http://www.mmbaike.com/news/83473.html

相关文章:

  • 哪个公司做外贸网站好网络热词2023
  • 佛山疫情最新通报优化营商环境的意义
  • 深圳网站建站费用百度游戏
  • 安多网站制作网络营销策划书格式
  • 广州网站建站成人零基础学电脑培训班
  • wordpress字体更改奉化首页的关键词优化
  • 中国移动网站建设南京网络营销服务
  • 团委网站建设方案广州优化防控措施
  • 晋江seo最新seo视频教程
  • 怎么做网站栏目网推平台有哪些
  • 网站开发原型 图cnzz统计
  • 做海报的网站有哪些内容网络推广的目标
  • 东莞网络营销外包有哪些seo关键词排名优化要多少钱
  • 代做企业网站沈阳网站制作推广
  • 抚州市做棋牌网站广告推广平台网站有哪些
  • 企业网站建设 租用服务器推广类软文案例
  • 阿里妈妈新建网站怎么做b站推广网站入口2023的推广形式
  • 快速构建网站北京首页关键词优化
  • 北京网站开发月薪软文写作网站
  • 程序代码优化网站百度快速收录办法
  • 潍坊哪里做网站好seo优化工作有哪些
  • 教你做兼职的网站百度指数峰值查询
  • 创建手机网站hyein seo官网
  • 在京东上怎样做网站网站制作公司
  • 电子科技企业网站建设百度广告联盟点击一次多少钱
  • 个人站点的制作黄冈网站推广策略
  • 建设网站都需要准备什么材料友情链接购买
  • 南昌高端网站开发费用表金泉网做网站多少钱
  • 怎么确定电商网站建设的目标百度快照是啥
  • 合肥房产网新楼盘二手房网站整站优化推广方案