Как передать несколько параметров в остальных API - PullRequest
0 голосов
/ 29 мая 2018

http://www.mkyong.com/webservices/jax-rs/restful-java-client-with-jersey-client/

Я использовал эту ссылку, чтобы позвонить из моего приложения.Здесь я могу передать один объект в качестве входного параметра.

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**);

Мне нужно передать несколько входных параметров (например, изображение, строку и т. Д.) Вместо ввода, но не как один объект.Как я мог решить эту проблему?

Ответы [ 2 ]

0 голосов
/ 29 мая 2018

Если вы хотите иметь несколько деталей с другими типами, вы должны использовать Multipart, вы можете найти больше информации о здесь .Таким образом, вы можете иметь часть изображения и две части строки, например.

Вы также можете отправить изображение в виде строки Base64 внутри вашего объекта, но это увеличит его размер.Лучшим способом является передача байта [] внутри объекта.

Возможна отправка всех этих данных в виде нескольких параметров запроса, но это будет очень плохо, а размер URL-адреса ограничен.

0 голосов
/ 29 мая 2018

Узнайте больше о различных методах HTTP и модели ответа на запрос HTTP.Википедия - хорошая отправная точка: https://en.wikipedia.org/wiki/Hypertext_Transfer_Protocol

Обычно данные передаются от клиента к серверу следующим образом:

  1. Параметры запроса и пути через GET / DELETE
  2. Текст, составная часть, сообщение, изображение, аудио, видео, приложение и т. Д. Через POST / PUT с помощью HTTP-заголовка Content-Type.Подробнее о различных типах контента читайте в Каковы все возможные значения для заголовка HTTP «Content-Type»?

Если вам нужно отправить разные типы контента вместе, скажем imageи текст, просто преобразуйте изображение в строку в виде байтового массива и отправьте его вместе с текстом.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...