Как разместить коллекцию с использованием HTTP-компонентов Apache

Можно ли POST запросить, используя HTTP-компоненты Apache с параметром, который сопоставлен с коллекцией?

Этот вопрос ранее задавался (здесь: Как опубликовать параметры массива с помощью HttpComponents). Ответа не было, поскольку пользователь предположительно "переключился [ed] на httpclient 3.x, и все работало [ed] как чудо".

Я не хочу делать это, так как httpclient был изношен, и его заменили HttpComponents.

Заранее спасибо.

2 ответа

Вот пример использования списка:

List <NameValuePair> nvps = new ArrayList <NameValuePair>();
nvps.add(new BasicNameValuePair("IDToken1", "username"));
nvps.add(new BasicNameValuePair("IDToken2", "password"));

httpost.setEntity(new UrlEncodedFormEntity(nvps, HTTP.UTF_8));

response = httpclient.execute(httpost);

От: ClientFormLogin.java из

httpcomponents-клиент-4.1.3\ Примеры \ орг \ Apache\ HTTP \ Примеры \ клиент

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

Кроме того, вы должны учитывать, что получает POST и как они ожидают, что коллекция будет выглядеть.

Другие вопросы по тегам