java - 如何将 JSON 字符串作为请求参数传递给其他服务
问题描述
我有两个服务正在运行。一项服务将生成 JSON 响应。下面是生成的 Json 响应。
{ "appliedCostMatrix": { "regionCostMatrix": "","costAreaCode": "", "costBoundaryId": 0, "isActive": "Y", "costRegionCode": "", "regionTypeCode": 3, "regionTypeDescription": "California", "solveTypeDescription": "Coaxial" }, "networkSolveRegion": "CALIFORNIA"}
现在要保存响应,我必须调用其他服务并且必须将此 Json 作为字符串传递。
http://localhost:8080/putSolvedRoutes?responseJson=(Above Mentioned JSON string)
谁能告诉我实现这一目标的最佳方法。
提前致谢。
解决方案
你试过什么?您的标签暗示这是一个 Spring 问题,因此在 Spring 启动的上下文中,设置您的控制器(接收您使用 json 数据发送的第二个请求)如下:
@RestController
public class YourRestController {
@RequestMapping(value="/your/endpoint", method=RequestMethod.POST)
public ResponseEntity<String> someMethod(@RequestBody YourDTO data) {
// business logic here
}
}
并使用您正在使用的任何客户端发送请求,在帖子中。
如果客户端也是 Spring,请查看文档以了解解决问题的一种可能方法。一个简单的例子:
@Service
public class YourService {
private final RestTemplate rt;
public YourService(RestTemplateBuilder rtb) {
this.rt = rtb.build();
}
public YourDTO someRestCall(String param) {
return this.rt.postForObject("/your/endpoint", YourDTO.class, param);
}
}
推荐阅读
- python-3.x - 在 Python3 中使用 random.choice()
- c# - 如何在 netcore 3 中多次读取 http 请求正文?
- sap - SAP Adobe Forms 中的隐藏表格
- javascript - 如何根据日期输入将 12 个字符串之一传递到模态?
- python - 如何确保发电机正确关闭?
- arrays - 尽可能均匀地分布数组中的项目类型
- java - 如何反转音频文件?
- environment-variables - dotenv gem 在 Rails 6 或 Ruby 2.6.5 中没有变量
- python-3.x - 从数据框列中取消列出所有列表
- c++ - C++“概念”和鸭子类型有什么关系?