2016-12-05 48 views
-1

我爲每個用戶登錄都發出JWT令牌,並在每次請求後驗證它,但我無法將jwt存儲到內存中的任何位置。那麼如何確認我收到的JWT是有效的,而不是在兩者之間進行鍛鍊。JAVA中的JWT認證。

+0

您必須爲此編寫驗證方法。 –

+0

是的。我知道我必須驗證收到的頭和簽名有效載荷。但我現在無法做到這一點。你能分享一下這個代碼嗎?我正在使用SignatureAlgorithm.HS256;謝謝 – freak007

回答

0

這可以幫助你:

final String secret = "{{secret used for signing}}"; 

try { 

    final JWTVerifier verifier = new JWTVerifier(secret); 
    final Map<String, Object> claims= verifier.verify(jwt); 

} 
catch (JWTVerifyException e) 
{ 

    // Invalid Token 
} 

或檢查出這個回購協議的Java庫簽名和驗證JWT令牌。

https://github.com/auth0/java-jwt

+0

感謝@carlspring - 用於改進格式。 –

+0

這沒有幫助。我正在使用「io.jsonwebtoken」。創建我的JWT。 – freak007

+0

好吧,所以我認爲你正在尋找這個https://github.com/jwtk/jjwt。他還有用於驗證jwt令牌的示例代碼。 –