Java中 Jwt

Posted tangshuo

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java中 Jwt相关的知识,希望对你有一定的参考价值。

java

jar包
技术图片

封装工具类

public class jwtTool {


    public static final String secretKey = "askjdksadjkasdakjshdjkasdkAakjshdjasdjs";


    public String getJWTWithHMAC256(String subject, String secretKey){
        //指定JWT所使?用的签名算法
        Algorithm algorithm = Algorithm.HMAC256(secretKey);
        String token = JWT.create()//创建token
                .withIssuer("com.kkb")//指定签发?人
                .withSubject(subject)//指定主体数据
                .withExpiresAt(new Date(new Date().getTime()+(1000*20)))
                .sign(algorithm);//最终?生成 token
        return token;
    }


    public boolean verifyTokenWithHMAC256(String token,String secretKey){
        try{
            Algorithm algorithm = Algorithm.HMAC256(secretKey);
            JWTVerifier verifier = JWT.require(algorithm)
                    .withIssuer("com.kkb")
                    .build();
            verifier.verify(token);
            return true;
        }catch (JWTVerificationException e){
            e.printStackTrace();
            return false;
        }
    }


}
DecodedJWT decode = JWT.decode(token);
System.out.println(decode.getSignature());
System.out.println(decode.getSubject());
System.out.println(decode.getExpiresAt());

以上是关于Java中 Jwt的主要内容,如果未能解决你的问题,请参考以下文章

java代码在片段活动中不起作用

在 JAVA ee 中使用 JWT 保护 REST 服务

如何在片段中使用 GetJsonFromUrlTask​​.java

# Java 常用代码片段

# Java 常用代码片段

创建片段而不从 java 代码实例化它