gpt4 book ai didi

java - 从 MultivaluedMap jax-rs 调用 Web 服务

转载 作者:行者123 更新时间:2023-12-02 11:00:54 25 4
gpt4 key购买 nike

我有一个 Web 服务,它接受客户端请求并将其发送到第二个 Web 服务。它获取第二个 Web 服务的响应并将其发送到客户端。其实它是一个网关。请求类型是“form urlencoded”。网关接受客户端的请求如下:

@WebMethod
@POST
@Path("/send")
@Consumes(MediaType.APPLICATION_FORM_URLENCODED)
String send(MultivaluedMap<String, String> encodedRequest, @Context HttpServletRequest httpServletRequest);

现在我有一个 MultivaluedMap,我想用这个 MultivaluedMap 调用第二个 Web 服务,而不对其执行任何过程。第二个 Web 服务也使用“application/x-www-form-urlencoded”。有没有办法调用第二个 Web 服务而不在此 MultivaluedMap 上执行任何过程?

最佳答案

使用 JAX-RS 发送 POST 请求 Client ,您调用 buildPost(Entity<?> entity) ,其中entity是POST内容。

Entity 有许多有用的辅助方法,例如 form(MultivaluedMap<String,String> formData) :

Create an "application/x-www-form-urlencoded" form entity.

所以,你写这样的东西:

Future<Response> response = client.target("http://example.com/foo")
.request()
.buildPost(Entity.form(encodedRequest))
.submit();

关于java - 从 MultivaluedMap jax-rs 调用 Web 服务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51337595/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com