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

慈溪网站制作网络运营需要学什么

慈溪网站制作,网络运营需要学什么,网站建设费科目,微信移动网站建设✨✨✨这里是秋刀鱼不做梦的BLOG ✨✨✨想要了解更多内容可以访问我的主页秋刀鱼不做梦-CSDN博客 目录 一、JJWT 是什么? 二。基本使用 (1)引入依赖 (2)生成密钥(使用HS256 签名) &#xff08…

✨✨✨这里是秋刀鱼不做梦的BLOG

✨✨✨想要了解更多内容可以访问我的主页秋刀鱼不做梦-CSDN博客

目录

一、JJWT 是什么?

二。基本使用

        (1)引入依赖

        (2)生成密钥(使用HS256 签名)

        (3)封装 JWT 工具类

三、使用示例


一、JJWT 是什么?

        JJWT 是一个用于在 Java 项目中生成和验证 JSON Web Token(JWT)的库,它由 io.jsonwebtoken 提供,简单易用,支持多种加密算法,如 HS256、RS256 等,JWT 常用于用户认证、接口鉴权、信息传递等场景。

二。基本使用

        (1)引入依赖

——首先先引入JJWT所需的依赖

<!-- 核心API -->
<dependency><groupId>io.jsonwebtoken</groupId><artifactId>jjwt-api</artifactId><version>0.11.5</version>
</dependency><!-- 底层实现包 -->
<dependency><groupId>io.jsonwebtoken</groupId><artifactId>jjwt-impl</artifactId><version>0.11.5</version><scope>runtime</scope>
</dependency><!-- JSON 处理工具,使用 Jackson -->
<dependency><groupId>io.jsonwebtoken</groupId><artifactId>jjwt-jackson</artifactId> <!-- jjwt-gson 也可以 --><version>0.11.5</version><scope>runtime</scope>
</dependency>

        (2)生成密钥(使用HS256 签名)

——在测试方法中或随便一个main方法中生成一共密钥用户后续使用

// 生成安全的随机密钥
Key key = Keys.secretKeyFor(SignatureAlgorithm.HS256);// 将密钥编码成 Base64 字符串(用于配置文件等)
String base64Key = Encoders.BASE64.encode(key.getEncoded());
System.out.println("Base64 密钥:" + base64Key);

        (3)封装 JWT 工具类

——通常我们会将JWT封装为一共工具类,其中包含 token 的生成和解析方法

public class JWTUtil {// 秘钥字符串(从配置文件中获取较安全)private static final String SECRET_STRING = Constants.USER_LOGIN_KEY;// 转换为 key 对象private static final Key key = Keys.hmacShaKeyFor(SECRET_STRING.getBytes(StandardCharsets.UTF_8));// 生成 token,传入自定义的 claims(如用户名、角色等)public static String getKey(Map<String, Object> claims) {return Jwts.builder().setClaims(claims)         // 设置自定义内容.signWith(key)             // 设置签名密钥.compact();                // 生成字符串}// 解析 token,返回 Claims 对象(包含所有自定义信息)public static Claims parseToken(String token) {return Jwts.parserBuilder().setSigningKey(key)        // 设置签名密钥.build().parseClaimsJws(token)     // 解析 token.getBody();                // 获取 Claims 部分}
}

三、使用示例

——以下为一个使用案例

public class TestJWT {public static void main(String[] args) {// 准备用户信息Map<String, Object> userInfo = new HashMap<>();userInfo.put("username", "zhangsan");userInfo.put("role", "admin");// 生成 tokenString token = JWTUtil.getKey(userInfo);System.out.println("生成的 JWT:" + token);// 解析 tokenClaims claims = JWTUtil.parseToken(token);System.out.println("解析出的用户信息:");System.out.println("用户名:" + claims.get("username"));System.out.println("角色:" + claims.get("role"));}
}


以上就是本篇文章的全部内容了~~~

http://www.dtcms.com/wzjs/358440.html

相关文章:

  • 微信浏览为网站的缓存怎么清理友情链接检测方法
  • 网站开发论文文献综述广告接单平台有哪些
  • 做电子购物网站需要申请线上营销的优势
  • wordpress 去版权seo排名优化培训怎样
  • 电影网站cpa怎么做semi final
  • 网站在线客服 国外西安sem竞价托管
  • 网站开发后端菜鸟教程企业seo顾问服务阿亮
  • 口碑好的福州网站建设如何免费推广自己的网站
  • 做美食分享网站源码链接推广
  • 什么网站有设计视频品牌营销策划包括哪些内容
  • 做海报创意网站5188关键词平台
  • 商城网站制作推广普通话内容100字
  • 公司网站现状网络舆情监测系统
  • 临沂网站设计建设游戏推广员是做什么的
  • 合肥制作企业网站百度霸屏推广靠谱吗
  • 广东住房和城乡建设厅网站造价互联网运营
  • 求网站建设平面设计主要做什么
  • 服务器做视频网站吗百度云网盘资源搜索
  • 做a图片网站网站建设优化的技巧
  • 房产信息门户网站建设方案seo关键词排名优化教程
  • 做外贸自己开公司网站如何把网站推广
  • 东凤镇 网站建设seo关键词排名优化手机
  • 做网站用什么软件最简单朋友圈广告投放平台
  • 如何用自己电脑做网站服务器惠州网站seo
  • 二级学院网站建设上海网络排名优化
  • 做网站毕设答辩问题新浪博客
  • 做个网站商场需要多少微信朋友圈的广告怎么投放
  • 聊城做网站的公司渠道站长工具站长
  • 沈阳网站建设咨询宁波专业seo服务
  • 网站开发架构mvc汕头seo托管