`JacksonSerializer` 不遵守 `JsonTypeInfo`
To Reproduce
java final MacAlgorithm macAlgorithm = Jwts.SIG.HS256; final SecretKey secretKey = macAlgorithm.key().build(); final ObjectMapper objectMapper = new ObjectMapper(); objectMapper.addMixIn(SimpleGrantedAuthority.class, SimpleGrantedAuthorityMixin.class); final String NAME = "additional"; final JacksonSerializer jacksonSerializer = new JacksonSerializer(objectMapper); final JacksonDeserializer jacksonDeserializer = new JacksonDeserializer(objectMapper, Map.of(NAME, SimpleGrantedAuthority.class)); final JwtBuilder builder = Jwts.builder().json(jacksonSerializer); builder.claims().add(NAME, new SimpleGrantedAuthority("ROLE_ADMIN")); final String jwt = builder.signWith(secretKey, macAlgorithm).compact(); final JwtParser parser = Jwts.parser().json(jacksonDeserializer).verifyWith(secretKey).build(); final Object payload = parser.parse(jwt).getPayload(); System.out.println(new String((byte[]) payload));
In the above program, JwtParser returns a byte[] payload.
内容来源: jwtk/jjwt