如何使用Apache HTTP组件发布集合

时间:2011-12-30 02:26:45

标签: java http apache-httpcomponents

是否可以使用带有映射到集合的参数的Apache HTTP组件来发布请求?

之前曾问过这个问题(这里:How to post array parameters with HttpComponents)。没有提供答案,因为用户应该“切换到httpclient 3.x”,并且所有工作[ed]就像一个魅力“。

我不想这样做,因为httpclient已经过生命终结,并且由HttpComponents继承。

提前谢谢。

2 个答案:

答案 0 :(得分:0)

我认为你必须自己从你的集合中获取它到参数列表中,我不知道HttpComponents的东西,但我猜他们没有标准的方法来做到这一点。但是看看你在问题中提到的代码,它与他们正在做的事情类似。

此外,您必须考虑接收POST的内容以及他们对集合的期望。

答案 1 :(得分:0)

以下是使用list的示例:

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 \例子\组织\阿帕奇\ HTTP \例子\客户端