gpt4 book ai didi

post - 在 Jersey REST 客户端中设置内容类型/编码

转载 作者:行者123 更新时间:2023-12-01 22:12:03 25 4
gpt4 key购买 nike

您好,我一直在尝试使用 jersey REST 客户端调用 REST POST API。 API 文档是网址:方法:邮寄标题信息:-X-GWS-应用程序名称:XYZ接受:application/json 或 application/xml

我的示例 Jersey 客户端代码是

Client client = Client.create();

WebResource resource=client.resource(URL);

resource.accept(javax.ws.rs.core.MediaType.APPLICATION_XML);
resource.type(javax.ws.rs.core.MediaType.APPLICATION_XML);
resource.type("charset=utf-8");
ClientResponse response = resource.post(ClientResponse.class,myReqObj);

自过去 1 周以来,我一直在尝试此代码变体,但它不起作用。非常感谢在这方面的任何帮助。

最佳答案

棘手的部分是 WebResource 方法遵循 Builder 设计模式,因此它返回一个 Builder 对象,您需要在调用其他方法来设置请求的完整上下文时保留并继续该对象。

当您执行resource.accept时,它会返回您不存储的内容,因此当您执行resource.type时它会丢失,因此只有您最后一次调用才会生效。

您通常会在一行中设置所有条件,但您也可以将输出保存在局部变量中。

ClientResponse response = client.resource(URL)
.accept(MediaType.APPLICATION_XML)
.type(MediaType.APPLICATION_XML)
.post(ClientResponse.class,myReqObj);

关于post - 在 Jersey REST 客户端中设置内容类型/编码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17541223/

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