【发布时间】:2018-06-20 19:13:37
【问题描述】:
我不明白在需要输入时如何使用 webclient 调用 REST api 方法的逻辑。假设我们的 post 方法是
@Post
@Path(/my_url)
@Produces(Some_Media_Type)
@Consumes(Some_Media_Type)
public returnClass function(inputClass1 arg1, inputClass2 arg2) {
return new returnClass(arg1,arg2);
}
如何传入 inputClass1 和 inputClass2 的实例?
WebTarget tgt = ClientBuilder.newClient()
.target("http://localhost/whatever" +/my_url)
那我需要调用响应
Response resp = tgt.request(Some_Media_Type).post(Entity.entity(...))
假设我的媒体类型是 JSON。那么如何传入 inputClass1 和 inputClass2 的实例,它是实体吗?
【问题讨论】:
-
你不能有两个这样的实体。一个 HTTP 请求应该只有一个实体主体。这是一成不变的。改不了。除非您使用
@FormParam或 Muitipart 和@FormDataParam,否则您的实体参数将始终限制为一个。