Java 如何在RESTAPI中传递多个参数';s
我使用此链接从我的应用程序中进行rest调用。这里我可以传递一个对象作为输入参数Java 如何在RESTAPI中传递多个参数';s,java,jersey-client,Java,Jersey Client,我使用此链接从我的应用程序中进行rest调用。这里我可以传递一个对象作为输入参数 Client client = Client.create(); WebResource webResource = client .resource("http://localhost:8080/RESTfulExample/rest/json/metallica/post"); String input = "{\"singer\":\"Metallica\",\"title\":\"Fade To Bl
Client client = Client.create();
WebResource webResource = client .resource("http://localhost:8080/RESTfulExample/rest/json/metallica/post");
String input = "{\"singer\":\"Metallica\",\"title\":\"Fade To Black\"}";
ClientResponse response = webResource.type("application/json") .post(ClientResponse.class, **input**);
我需要在输入位置传递多个输入参数(如图像、字符串等),但不能作为一个对象。如何解决这个问题?更多地了解各种HTTP方法和HTTP的请求-响应模型。维基百科是一个很好的起点: 数据通常以以下方式从客户端传递到服务器:
内容类型的帮助下通过POST/PUT
HTTP头。阅读有关各种内容类型的更多信息,请访问如果您需要同时发送各种内容类型,例如图像和文本,只需将图像转换为一个字节数组的字符串,并将其与文本一起发送。如果您希望将多个部分与其他类型一起发送,则应使用多部分,您可以找到有关的详细信息。例如,您可以有一个图像部分和两个字符串部分 您也可以在对象中以Base64字符串的形式发送图像,但这会增加图像的大小。更好的方法是在对象内部传递字节[] 一种可能是将所有这些数据作为多个查询参数发送,但这将非常糟糕,而且url的大小也有限。请参见此处