一. 使用url传递参数的方式:
List<NameValuePair> parameters4 = new ArrayList<NameValuePair>();
parameters4.add(new BasicNameValuePair("data", json));
HttpEntity entms4 = new UrlEncodedFormEntity(parameters4, "UTF-8");
httppost.setEntity(entms4);
二. 使用body传递参数
StringEntity s = new StringEntity(json.toString());
httppost.setEntity(s);
三. 例子如下:
String url="http://192.168.87.149:8084/api/TokenAuth/GetToken";
// 创建默认的httpClient实例.
CloseableHttpClient httpclient = HttpClients.createDefault();
CloseableHttpResponse response;
try {
HttpPost httppost = new HttpPost(url);
JSONObject json = new JSONObject();
json.put("userName", "******");
json.put("password", "**********");
StringEntity s = new StringEntity(json.toString());
//HttpEntity entms4 = new UrlEncodedFormEntity(parameters4, "UTF-8");
httppost.setEntity(s);
httppost.setHeader("Accept", "application/json");
httppost.setHeader("Content-Type", "application/json");
response = httpclient.execute(httppost);
StatusLine statusLine = response.getStatusLine();
//确认发送
if (statusLine.getStatusCode() == HttpStatus.SC_OK) {//链接成功
//通过HttpResponse接口的getEntity方法返回响应信息,并进行相应的处理。
String result = EntityUtils.toString(response.getEntity());
} else {
//发送失败时的处理
System.out.println("失败"+statusLine.getStatusCode());
}
}finally {
// 关闭连接,释放资源
try {
httpclient.close();
} catch (Exception e) {
e.printStackTrace();
}
}