1.报错404路径错误
第一次测试调用报错404.
postman调用测试环境是没问题的.
代码如下:
master-data-main是nacos微服务服务列表的服务名.也是调用的测试环境.
经过对比发现,path少了一个master-data,加上master-data就解决了.
2.调用成功后返回数据为null.
启动本地服务,调用测试环境的测试接口.
controller.
调用服务.
调用结果和预期的不符合.
服务方接口.
经过排查发现,调用的服务返回的一个Resultsjson格式的数据.我用对象去接收是不会映射值的.
feign接口改成.
调用结果:
3.Feign返回的JSON对象转化为所需要的实体:
// json ,调用返回的数据.
JSONObject json = testFeign.result(consultantCode);
//将json转成需要的对象,data为实体需要的数据
ConsultantDTO consultantDTO = this.convertValue(json.get("data"),ConsultantDTO.class);
/** convertValue方法
* @param bean object对象
* @param clazz 要转的class类
* @param <T>第一个T声明这个方法是个泛型方法,第二个T是表示这个方法的返回类型.
* @return 返回具体的实体对象.
*/
public static <T> T convertValue(Object bean, Class<T> clazz){
try{
ObjectMapper mapper = new ObjectMapper();
return mapper.convertValue(bean, clazz);
}catch(Exception e){
e.printStackTrace();
return null;
}
}
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/5820.html