JTW——02,第一个jwt程序

本文介绍了使用Java-JWT库实现JWT程序的基本步骤,包括引入com.auth0.java-jwt依赖,生成包含userid和username的JWT令牌,以及如何解析并获取令牌中的数据。
摘要由CSDN通过智能技术生成

一、引入依赖

		<dependency>
            <groupId>com.auth0</groupId>
            <artifactId>java-jwt</artifactId>
            <version>3.4.0</version>
        </dependency>

二、生成token

	@Test
    void contextLoads() {
        Calendar instance = Calendar.getInstance();
        instance.add(Calendar.SECOND,3600);
        //生成令牌
        String token = JWT.create()
                //省略了Header,Header可以不写
                .withClaim("userid",110)    //Payload
                .withClaim("username","chenshao")   //Payload
                .withExpiresAt(instance.getTime())  //设置过期时间
                .sign(Algorithm.HMAC256("!asdqewqweqwdasx"));  //加密算法,秘钥
        System.out.println(token);
    }

生成结果如下:

在这里插入图片描述

三、解析令牌数据

    @Test
    public void test () {
        //创建验证对象
        JWTVerifier jwtVerifier = JWT.require(Algorithm.HMAC256("!asdqewqweqwdasx")).build();   //跟上面的秘钥一样
        DecodedJWT verify = jwtVerifier.verify("eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJleHAiOjE2OTkzNDkwNTksInVzZXJpZCI6MTEwLCJ1c2VybmFtZSI6ImNoZW5zaGFvIn0.aIIONTgQHsnquGRpkrygtp3bHGj-HW0Ql7ZTwE-tQMI");
        System.out.println(verify.getClaim("userid").asInt());
        System.out.println(verify.getClaim("username").asString());
    }

解析结果如下:

在这里插入图片描述

四、补充

在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值