解析 JWT 令牌有效负载数据以在 android/java [关闭]
Posted
技术标签:
【中文标题】解析 JWT 令牌有效负载数据以在 android/java [关闭]【英文标题】:Parse JWT token payload data to get certain value in android/java [closed] 【发布时间】:2017-02-10 20:29:31 【问题描述】:我刚接触到 JWT,想知道如何解析有效负载数据以使用密钥从中获取特定值。
以下 JWT 令牌中的示例 eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWV9.TJVA95OrM7E2cBab30RMHrHDcEfxjoYZgeFO
payload数据在jwt.io中解码时包含以下对象
"sub" : "1234567890"
"name" : "John Doe"
"admin" : "true"
我希望能够解析此对象以获取 name 的值,在本例中为来自上述 JWT 令牌的 John Doe。
我已经读过这个android JWT parsing payload/claims when signed
但我想知道是否有使用某些库在 android 中执行此操作的有效方法。任何帮助,将不胜感激。
【问题讨论】:
【参考方案1】:您可以为此使用Java JWT:
String name = Jwts.parser().setSigningKey(keyUsedWhenSigningJwt).parseClaimsJws("base64EncodedJwtHere").getBody().get("name", String.class);
【讨论】:
【参考方案2】:我解决了这个问题,通常解析字符串并从 base64 解码,然后将字符串转换为 JSONObject 并解析 JSONObject 以获得所需的值。
【讨论】:
你能举个例子吗? ***.com/questions/56399692/…以上是关于解析 JWT 令牌有效负载数据以在 android/java [关闭]的主要内容,如果未能解决你的问题,请参考以下文章