使用 JwtSecurityTokenHandler 解碼 JWT 令牌
解碼 JWT(JSON Web 令牌)可讓您驗證這些令牌並從中提取資訊。要使用 JwtSecurityTokenHandler 解碼 JWT 令牌,您可以按照以下步驟操作:
在您的程式碼中,您在嘗試解碼 JWT 令牌時遇到錯誤。問題源自於以下事實:提供的串流對於 JwtSecurityTokenHandler 的格式不正確。
要解決此問題,您需要轉換handler.ReadToken 的結果,如下所示:
var stream = "[encoded jwt]"; var handler = new JwtSecurityTokenHandler(); var jsonToken = handler.ReadToken(stream); var tokenS = jsonToken as JwtSecurityToken;
或者,您可以使用JwtSecurityTokenHandler.ReadJwtToken 方法來解碼令牌,而無需顯式轉換結果:
var token = "[encoded jwt]"; var handler = new JwtSecurityTokenHandler(); var jwtSecurityToken = handler.ReadJwtToken(token);
解碼令牌後,您可以存取聲明。例如,要取得「jti」聲明,您可以使用以下程式碼:
var jti = tokenS.Claims.First(claim => claim.Type == "jti").Value;
按照下列步驟,您可以使用 JwtSecurityTokenHandler 成功解碼 JWT 令牌。
以上是如何使用 JwtSecurityTokenHandler 解碼 JWT 令牌?的詳細內容。更多資訊請關注PHP中文網其他相關文章!