【发布时间】:2011-08-15 17:30:44
【问题描述】:
我正在使用 Apache HTTP 客户端,我需要向我的 servlet 发送一个 POST 请求。
发送请求时,我的 servlet 没有收到任何参数(在 HttpServletRequest 中)。
这是客户端程序代码:
// Engage the HTTP client
DefaultHttpClient httpclient = new DefaultHttpClient();
HttpResponse response;
try {
HttpPost httpPost = new HttpPost("http://localhost:8080/test-json-web/JSONReceiverServlet");
// Setup the request parameters
HttpParams params = new BasicHttpParams();
params.setParameter("taskdef", task1JsonString);
httpPost.setParams(params);
// Make the request
response = httpclient.execute(httpPost);
HttpEntity responseEntity = response.getEntity();
System.out.println("----------------------------------------");
System.out.println(response.getStatusLine());
if(responseEntity != null) {
System.out.println("Response content length: " + responseEntity.getContentLength());
}
String jsonResultString = EntityUtils.toString(responseEntity);
EntityUtils.consume(responseEntity);
System.out.println("----------------------------------------");
System.out.println("result:");
System.out.println();
} catch (ClientProtocolException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} finally {
httpclient.getConnectionManager().shutdown();
}
如何正确设置POST请求参数,让servlet真正接收到?
【问题讨论】:
标签: post httpclient