Java 试图添加http参数,但它不是';行不通
你查过了吗?它使用类Java 试图添加http参数,但它不是';行不通,java,apache,http,post,Java,Apache,Http,Post,你查过了吗?它使用类BasicNameValuePair,而不是像您这样使用basichtpParams 此外,政府亦会: 更新:basichttparams类是httparams接口的实现,如下文@Perception所述,该接口是一组“自定义HTTP客户端行为”的属性。来自:“HttpParams预计将在“一次写入-多次读取”模式下使用。一旦初始化,HTTP参数预计不会在HTTP消息处理过程中发生变化。”具体而言,HttpParams类用于设置自定义HTTP客户端行为的变量。它不是用来将信息
BasicNameValuePair
,而不是像您这样使用basichtpParams
此外,政府亦会:
更新:
basichttparams
类是httparams
接口的实现,如下文@Perception所述,该接口是一组“自定义HTTP客户端行为”的属性。来自:“HttpParams预计将在“一次写入-多次读取”模式下使用。一旦初始化,HTTP参数预计不会在HTTP消息处理过程中发生变化。”具体而言,HttpParams类用于设置自定义HTTP客户端行为的变量。它不是用来将信息传递给服务器端的。这就是OP的代码不起作用的原因。如果你扩展你的答案来包含这些信息,我将+1。这让我达到了我需要去的地方。我将用代码更新我的主要帖子。
HttpClient httpclient = new DefaultHttpClient();
try {
HttpPost httpMethod = new HttpPost(this.transformURL(request));
BasicHttpParams params = new BasicHttpParams();
params.setParameter("name", name);
httpMethod.setParams(params);
ResponseHandler<String> responseHandler = new BasicResponseHandler();
httpclient.execute(httpMethod, responseHandler);
}catch{
LOG.error("Error");
} finally {
httpclient.getConnectionManager().shutdown();
}
List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(1);
nameValuePairs.add(new BasicNameValuePair("name", request.getParameter("name")));
httpMethod.setEntity(new UrlEncodedFormEntity(nameValuePairs));
PostMethod post = new PostMethod("http://jakarata.apache.org/");
NameValuePair[] data = {
new NameValuePair("user", "joe"),
new NameValuePair("password", "bloggs")
};
post.setRequestBody(data);
// execute method and handle any error responses.
...
InputStream in = post.getResponseBodyAsStream();
// handle response.