gpt4 book ai didi

java - 从 JWT 获取 Set 类型的对象?

转载 作者:行者123 更新时间:2023-11-30 02:18:08 25 4
gpt4 key购买 nike

我正在尝试使用 JJWT 库从 JSON Web token 获取一些数据:https://github.com/jwtk/jjwt

方法签名如下:

<T> T get(String claimName, Class<T> requiredType);

在声明属性中,我有一个字符串类型的集合。

当尝试像这样从此方法中获取时

Claims claims - Jwts.parser()...
claims.get("Role", Set.class);

我收到以下错误

! io.jsonwebtoken.RequiredTypeException: Expected value to be of type: interface java.util.Set, but was class java.util.ArrayList

设置此声明时,类型为 Set

public Set<String> getRoles() {
return roles;
} ....


claim("Role", user.getRoles())

有什么想法可以解决这个问题吗?

最佳答案

JSON 因此 JWT 没有 Set 的概念,以 Array/ArrayList 形式检索数据并将其转换为 Set: Easiest way to convert a List to a Set in Java

关于java - 从 JWT 获取 Set<String> 类型的对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47679687/

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