使用 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中文网其他相关文章!