jwc令牌報錯生成失敗

椰子灰發表於2024-07-25

原始碼

//    生成jwt令牌
    @Test
    public void testGenJwt(){
        Map<String, Object> claims = new HashMap<>();
        //儲存測試資料
        claims.put("id",1);
        claims.put("name","ZTZGTEDXT");

        String jwt = Jwts.builder()
                .signWith(SignatureAlgorithm.HS256, "itheima")      //設定簽名演算法
                .setClaims(claims)      //自定義內容(載荷部分)
                .setExpiration(new Date(System.currentTimeMillis() + 3600 * 1000))        //有效期為1h,new Date()當前時間,System.currentTimeMillis()當前時間的毫秒值
                .compact();
        System.out.println(jwt);
    }

版本不適配,更改版本後:

jdk:17

pom.xml

<!--        jwt令牌依賴-->
        <dependency>
            <groupId>io.jsonwebtoken</groupId>
            <artifactId>jjwt-impl</artifactId>
            <version>0.11.5</version>
        </dependency>

出現新報錯

嘶……這是,太短了?

將signWith部分更改到50字元後,又出現新報錯

補充依賴為

<!--        jwt令牌依賴-->
        <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>
        </dependency>
        <dependency>
            <groupId>io.jsonwebtoken</groupId>
            <artifactId>jjwt-jackson</artifactId>
            <version>0.11.5</version>
            <scope>runtime</scope>
        </dependency>

載入,再次執行程式碼

令牌生成成功

——————

無關:jwt官網地址:  https://jwt.io/

相關文章