国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發(fā) > Java > 正文

java使用common-httpclient包實現(xiàn)post請求方法示例

2024-07-14 08:41:59
字體:
供稿:網(wǎng)友

前言

項目中需要請求第三方接口,而且要求請求參數(shù)數(shù)據(jù)為json類型的。本來首先使用的是httpclient的jar包,但是因為項目中已經(jīng)使用了common-httpclient的jar包,引起了沖突,所以不得不使用common-httpclient來實現(xiàn)。

示例代碼:

import java.io.BufferedReader;import java.io.FileOutputStream;import java.io.IOException;import java.io.InputStream;import java.io.InputStreamReader;import java.net.URL;import java.net.URLConnection;import java.util.List;import java.util.Map;import java.util.zip.GZIPInputStream;import org.apache.commons.httpclient.HttpClient;import org.apache.commons.httpclient.HttpMethod;import org.apache.commons.httpclient.NameValuePair;import org.apache.commons.httpclient.methods.GetMethod;import org.apache.commons.httpclient.methods.PostMethod;import org.apache.commons.httpclient.methods.RequestEntity;import org.apache.commons.httpclient.methods.StringRequestEntity;import org.apache.commons.io.IOUtils;import org.slf4j.Logger;import org.slf4j.LoggerFactory;public class HTTPUtils { private static Logger logger = LoggerFactory.getLogger(HTTPUtils.class); /**  * post請求  * @param url  * @param json  * @return  */ public static String postJosnContent(String url, String Json) throws Exception {//  HttpPost method = new HttpPost(url); //  DefaultHttpClient httpClient = new DefaultHttpClient(); //  String ret = null;//  try {//   StringEntity entity = new StringEntity(Json,"UTF-8");//解決中文亂碼問題  //    entity.setContentEncoding("UTF-8"); //    entity.setContentType("application/json");//    method.setEntity(entity); //    HttpResponse result = httpClient.execute(method); //    ret = EntityUtils.toString(result.getEntity()); //  } catch (Exception e) {//   throw e;//  } finally {//   method.releaseConnection();//  }//  return ret;  logger.error("請求接口參數(shù):" + Json);  PostMethod method = new PostMethod(url);  HttpClient httpClient = new HttpClient();  try {   RequestEntity entity = new StringRequestEntity(Json,"application/json","UTF-8");   method.setRequestEntity(entity);   httpClient.executeMethod(method);   logger.error("請求接口路徑url:" + method.getURI().toString());   InputStream in = method.getResponseBodyAsStream();   //下面將stream轉(zhuǎn)換為String   StringBuffer sb = new StringBuffer();   InputStreamReader isr = new InputStreamReader(in, "UTF-8");   char[] b = new char[4096];   for(int n; (n = isr.read(b)) != -1;) {    sb.append(new String(b, 0, n));   }   String returnStr = sb.toString();   return returnStr;  } catch (Exception e) {   e.printStackTrace();   throw e;  } finally {   method.releaseConnection();  } }}

總結(jié)

以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學習或者工作具有一定的參考學習價值,如果有疑問大家可以留言交流,謝謝大家對VeVb武林網(wǎng)的支持。


注:相關(guān)教程知識閱讀請移步到JAVA教程頻道。
發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 光泽县| 文山县| 大埔区| 安陆市| 肇源县| 新宾| 西城区| 成武县| 万全县| 宜阳县| 高要市| 隆安县| 曲水县| 固安县| 隆回县| 新津县| 湄潭县| 那曲县| 肇源县| 泸水县| 襄城县| 句容市| 汉中市| 米泉市| 云安县| 泾源县| 双桥区| 吉木萨尔县| 襄樊市| 安吉县| 张家界市| 肥西县| 原阳县| 临漳县| 繁峙县| 霍林郭勒市| 香港| 龙南县| 三江| 双鸭山市| 苍南县|