我正在使用多线程发布请求设置一个REST服务(在微服务场景中),我需要区分RequestBody传递,例如:

{obj0, obj1, obj2, obj3}

前三个obj正确地在kafka队列上转发,但是现在我想添加新的obj(obj3)并分离他的传递,以将其发送到另一个外部rest服务上。
此外部GET服务将接收obj3(仅2个字符串),以使他的PathVariable变价并触发其他一些算法。
我如何获得这个结果?
在我的doExecute()方法中,我有一些像这样的代码:

for (String element : bodyElements) {
  String[] singleElement = element.split(",");

        if (obj1 || obj2 || obj3){
          ...do something;
          }else{
           ...forward obj3 to other REST service
          }


任何帮助表示感谢,谢谢!

最佳答案

我希望这能回答您的问题

HttpEntity body = new HttpEntity(postBody,headers);
new RestTemplate().exchange("http://service-url",HttpMethod.POST,body,String.class);


这只是其余模板的示例。如果要执行GET调用,只需将HttpMethod.POST替换为HttpMethod.GET并将主体传递为null

07-24 19:55