gpt4 book ai didi

java - 解析 JWT 以获取声明时出现问题

转载 作者:行者123 更新时间:2023-12-05 04:59:16 26 4
gpt4 key购买 nike

我想获取作为声明存储在 JWT 中的角色。我正在使用以下代码来执行此操作:

   DecodedJWT decodedJWT = JWT.require(Algorithm.HMAC512(SecurityConstants.SECRET.getBytes()))
.build()
.verify(token.replace(SecurityConstants.TOKEN_PREFIX, ""));
String user = decodedJWT.getSubject();
Claim claims = decodedJWT.getClaims();
String roles = claims.get("roles").toString();

但这最终会给出目标代码:

 (Value of roles)JSONNodeClaim@10091

我调试了代码并发现了这样的声明:

enter image description here

如何提取“ROLE_ADMIN”?

最佳答案

您可以将声明转换为Claim 类并调用.asString() 方法将其作为字符串返回:

String claims = ((Claim) decodedJWT.getClaim("roles")).asString();

关于java - 解析 JWT 以获取声明时出现问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63591110/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com