Как разместить коллекцию с использованием 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 и как они ожидают, что коллекция будет выглядеть.