對於請求頭Content-Type,默認application/x-www-form-urlencoded。java
一、(可用)緩存
CloseableHttpClient client = HttpClients.createDefault();
// 實例化一個post對象
HttpPost post = new HttpPost(「url」);
// 使用NameValuePair將發送的參數打包
List<NameValuePair> list = new ArrayList<NameValuePair>();
// 打包傳參
list.add(new BasicNameValuePair("xmlContent", requestXml));
// 使用URLEncodedFormEntity工具類實現一個entity對象,並使用NameValuePair中的數據進行初始化
UrlEncodedFormEntity formEntity = new UrlEncodedFormEntity(list, Consts.UTF_8);
// 將實例化的 entity對象放到post對象的請求體中
post.setEntity(formEntity);
// 創建一個響應對象, 接受客戶端執行post後的響應結果
CloseableHttpResponse response = client.execute(post);
// 從實體中提取結果數據
String result = EntityUtils.toString(response.getEntity(),"UTF-8");app
二、(可用)工具
HttpClient client = new DefaultHttpClient();
HttpPost post = new HttpPost(HQCInterConstant.GATE_URL);
HttpResponse resp = null;
// 使用NameValuePair將發送的參數打包
List<NameValuePair> list = new ArrayList<NameValuePair>();
// 打包
list.add(new BasicNameValuePair("xmlContent", requestXml));
// 使用URLEncodedFormEntity工具類實現一個entity對象,並使用NameValuePair中的數據進行初始化
UrlEncodedFormEntity formEntity = new UrlEncodedFormEntity(list, Consts.UTF_8);
// 將實例化的 entity對象放到post對象的請求體中
post.setEntity(formEntity);
resp = client.execute(post);
if (resp.getStatusLine().getStatusCode() == 200) {
System.out.println("ok");
}
String result= EntityUtils.toString(resp.getEntity(),"UTF-8"); post
三、(可用)url
// URL url = new URL(HQCInterConstant.GATE_URL);
// HttpURLConnection conn = (HttpURLConnection) url.openConnection();
// conn.setConnectTimeout(30000); // 設置鏈接主機超時(單位:毫秒)
// conn.setReadTimeout(30000); // 設置從主機讀取數據超時(單位:毫秒)
// conn.setDoOutput(true); // post請求參數要放在http正文內,顧設置成true,默認是false
// conn.setDoInput(true); // 設置是否從httpUrlConnection讀入,默認狀況下是true
// conn.setUseCaches(false); // Post 請求不能使用緩存
// // 設定傳送的內容類型是可序列化的java對象(若是不設此項,在傳送序列化對象時,當WEB服務默認的不是這種類型時可能拋java.io.EOFException)
// conn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded");
// conn.setRequestMethod("POST");// 設定請求的方法爲"POST",默認是GET
// //conn.setRequestProperty("Content-Length", requestXml.length() + "");
// requestXml="xmlContent="+URLEncoder.encode(requestXml, "UTF-8");
// OutputStreamWriter out = new OutputStreamWriter(conn.getOutputStream(), "UTF-8");
// out.write(requestXml.toString());
// out.flush();
// out.close();
// if (conn.getResponseCode() != HttpURLConnection.HTTP_OK) {
// return null;
// }
// // 獲取響應內容體
// BufferedReader in = new BufferedReader(new InputStreamReader(conn.getInputStream(), "UTF-8"));
// String line = null;
// StringBuffer strBuf = new StringBuffer();
// while ((line = in.readLine()) != null) {
// strBuf.append(line).append("\n");
// }
// in.close();code