spring - spring Webclient泛型结果.class 不起作用
问题描述
在spring webclient中我想反序列化结果中的响应
'''
Mono<Result<Lead>> result = webClient
.get()
.uri("/leads?page="+page)
.header(HttpHeaders.AUTHORIZATION,"Bearer " + tocken)
.retrieve().bodyToMono(Result<Lead>.class);
''' Result.class 返回错误
在这种情况下我可以如何使用泛型?
解决方案
由于 Spring 不知道泛型类型,它将任何未知类型反序列化为 LinkedHashMap。因此使用ParameterizedTypeReference将 json 反序列化为 Result 的确切类型。ParameterizedTypeReference捕获泛型类型并在运行时保留它。
Mono<Result<Lead>> result = webClient
.get()
.uri("/leads?page="+page)
.header(HttpHeaders.AUTHORIZATION,"Bearer " + tocken)
.retrieve().bodyToMono(new ParameterizedTypeReference<Result<Lead>>(){
});;
推荐阅读
- pyspark - 按倾斜列重新分区时文件大小不均匀以避免小文件
- python - 如何管理 GIT 子模块/树的文件结构?
- javascript - javascript计数的随机速度?
- python - 2 个 ArUco 标记平面之间的角度
- python - 熊猫数据框:将一列中的值与前一个值进行比较
- c - 如何创建一个简单的函数,给定一个单词可以删除 C 中包含它的特定行
- spring - Spring WS 中配置自己替换 DefaultMethodEndpointAdapter 的正确方法是什么?
- c# - LINQ 等效于 SQL LIKE 用于带有数字的文本字段
- c# - 调用下一个委托后,中间件应使请求失败
- java - 定期从 spring 安全上下文中检索到的用户为空