gpt4 book ai didi

java - Spring:RestTemplate 返回空对象

转载 作者:行者123 更新时间:2023-12-04 15:40:51 49 4
gpt4 key购买 nike

使用以下 GET 请求:

ResponseEntity<String> entity = restTemplate.exchange(uri, HttpMethod.GET, requestEntity, String.class );
entity.getBody();

返回这样的 JSON 字符串:
{"userRegistrations":[{"userRegistrationToken":"fb398972","userRegistrationTokenAlias":"87f15f8"}]}

但我想用一个对象而不是字符串来完成这项工作。因此,使用下面的代码,我收到一个 UserRegistrations 对象,其中包含一个空 UserTokenResponse 列表
ResponseEntity<UserRegistrations> entity = restTemplate.exchange(uri, HttpMethod.GET, requestEntity, UserRegistrations.class );
entity.getBody();

我的域类如下所示:
public class UserRegistrations {
List<UserTokenResponse> userRegistrationList;
//..getters and setters
}

public class UserTokenResponse {
private String userRegistrationToken;
private String userRegistrationTokenAlias;
//getters and setters
}

我错过了什么?

最佳答案

假设您使用的是 Jackson,RestTemplate自动注册 MappingJackson2HttpMessageConverter配置底层 ObjectMapper忽略未知属性。

JSON 对象有一个名为 userRegistrations 的属性。 ,而您的 Java 类只有一个名为 userRegistrationList 的属性.他们不匹配。

它们需要匹配,或者您需要添加 @JsonProperty使 Jackson 将其序列化/解析为 userRegistrations 的属性注释.

关于java - Spring:RestTemplate 返回空对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41149412/

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