java - Java中微服务之间通信时如何将RestTemplate转换为String
问题描述
我在这里尝试在两个微服务之间进行通信。我想从另一个微服务中读取一个微服务中写入的消息。我为此使用了 RestTemplate。但是当我尝试将其转换为字符串时,它不会出现。我得到这个'RestTemplate类型的方法交换(String,HttpMethod,HttpEntity<?>,Class,Object ...)不适用于参数(String,String,null,Class)'
@RequestMapping("/")
public String test(){
String a = restTemplate.exchange("http://localhost:8081/KDSystem/Testpro/pros", HttpMethod.GET,null,String.class).getBody().toString();
return a;
}
任何关于如何做到这一点的想法将不胜感激。
解决方案
我建议你使用getForObject(URI url, Class<T> responseType)
方法:
@RequestMapping("/")
public String test(){
return restTemplate.getForObject("http://localhost:8081/KDSystem/Testpro/pros", String.class);
}
关于exchange(String, HttpMethod, HttpEntity<?>, Class, Object...)
根据异常文本的方法:您正在尝试传递 '(String, String, null, Class)' 但第二个参数应该是 HttpMethod。
推荐阅读
- ubuntu - 无法找到软件包 gluu-server
- c# - 字符串,c#如何同时比较字符串
- .htaccess - 重写规则在生产映像的 MAMP Pro 开发环境中不起作用
- tensorflow - 如何在 python 或 tfjs 中使用智能回复自定义操作?
- azure - 一次删除后,CosmosDb 循环删除失败
- vue.js - 无法完全在 vuex 状态下设置嵌套对象值
- c# - 如何从数据列表中删除缓存项?
- python - 在 K-NN 中,如何显示用于做出正确预测的 k 个案例集
- html - 以另一种颜色更改选择选项时出现问题
- javascript - 如何减小 React Native iOS 应用程序的大小?