Spring boot restemplate.exchange的通用返回类型

Spring boot restemplate.exchange的通用返回类型,spring-boot,resttemplate,Spring Boot,Resttemplate,我正在使用restemplate.exchange调用URL并获取响应。但是问题是,当我成功地接收到输出时,以及如果我得到一些错误,响应类型会有所不同。 例如 ResponseEntity response=restemplate.exchange(端点,HttpMethod.GET,req, 新的ParameteredTypeReference(){},uriVariables); 若服务并没有问题,则输出为列表格式。但是,如果出现诸如“未找到数据”之类的错误,则响应在MAP中。所以,每当我

我正在使用restemplate.exchange调用URL并获取响应。但是问题是,当我成功地接收到输出时,以及如果我得到一些错误,响应类型会有所不同。 例如

ResponseEntity response=restemplate.exchange(端点,HttpMethod.GET,req,
新的ParameteredTypeReference(){},uriVariables);
若服务并没有问题,则输出为列表格式。但是,如果出现诸如“未找到数据”之类的错误,则响应在MAP中。所以,每当我对URL有任何问题时,我都会得到“404:null error”,因为我的响应类型无法识别映射中的错误

由于我无法更改服务的响应类型,请您提出建议

编辑:: 回复[{“姓名”:“XXX”,“部门”:“教学”,“创建日期”:“YYY”,“创建日期”:“2018年9月6日”}]

当未找到数据时,案例::

回应
{“回复”:“未找到数据”}

我真的不明白你的问题。主要问题是什么?响应体的解析?通常,HTTP状态
404
表示未映射URL或未找到数据
REST
apisys。。由于URL的响应因情况而异,如果我成功检索到输出,我会在列表中得到响应,但如果出现诸如“未找到数据”之类的错误,则响应在映射中。我无法更改响应类型,因为我不知道是否会收到任何输出,或者是否会出错。如果“未找到数据”,您希望从响应中提取什么?对我来说,这意味着你没有得到任何回报。您可以在Spring中检查
ResponseEntity
的响应状态,并有条件地执行某些操作。当“未找到数据”{response:NO DATA FOUND}是一种映射类型时,URL将返回如下响应。因此,我需要获取此响应。请您使用类似于
curl-i的方式发布两个可能的结果,好吗http://yourURL
并在您的问题中张贴两种可能的结果
ResponseEntity<XXX[]> response = restTemplate.exchange(endPoint,HttpMethod.GET,req,
            new ParameterizedTypeReference<XXX[]>() {},uriVariables);