Java:java-jwt實現JsonWebToken
文檔:https://github.com/auth0/java-jwt

依賴
1
2
3
4
5
6
7
代碼示例
package com.mouday; import com.auth0.jwt.JWT; import com.auth0.jwt.JWTVerifier; import com.auth0.jwt.Algorithms.Algorithm; import com.auth0.jwt.interfaces.Claim; import com.auth0.jwt.interfaces.DecodedJWT; import org.junit.jupiter.api.Test; import java.util.Date; import java.util.Map; public class JwtDemo { //過期時間 120秒后 private long expire = 120; // 秘鑰 private String secret = "123456"; @Test public void createJwt() { Date now = new Date(); Date expireDate = new Date(now.getTime() + expire * 1000); Algorithm algorithm = Algorithm.HMAC256(secret); String token = JWT.create() .withClaim("id", 12) // 增加Payload數據 .withExpiresAt(expireDate) // 過期時間 .sign(algorithm); System.out.println(token); } @Test public void decodeJwt() { String token = "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpZCI6MTIsImV4cCI6MTYwNzg3MjM5NH0.J5ih6dffc7z3D2ckYDCe61JuhsQJLXjQuDIUGMip94s"; DecodedJWT jwt = JWT.decode(token); System.out.println(jwt.getToken()); System.out.println(jwt.getHeader()); System.out.println(jwt.getPayload()); System.out.println(jwt.getSignature()); // 獲取Payload中的數據 Map
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
Java
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。