常用工具类之HttpclientUtil

首先给大家推荐一下我老师大神的人工智能教学网站。教学不仅零基础,通俗易懂,而且非常风趣幽默,还时不时有内涵黄段子!点这里可以跳转到网站

package com.chenfeng.ego.commons.util; import java.io.IOException;import java.net.URI;import java.util.ArrayList;import java.util.List;import java.util.Map; import org.apache.http.NameValuePair;import org.apache.http.client.entity.UrlEncodedFormEntity;import org.apache.http.client.methods.CloseableHttpResponse;import org.apache.http.client.methods.HttpGet;import org.apache.http.client.methods.HttpPost;import org.apache.http.client.utils.URIBuilder;import org.apache.http.entity.ContentType;import org.apache.http.entity.StringEntity;import org.apache.http.impl.client.CloseableHttpClient;import org.apache.http.impl.client.HttpClients;import org.apache.http.message.BasicNameValuePair;import org.apache.http.util.EntityUtils; public class HttpClientUtil { 	public static String doGet(String url, Map<String, String> param) { 		// 创建Httpclient对象		CloseableHttpClient httpclient = HttpClients.createDefault(); 		String resultString = "";		CloseableHttpResponse response = null;		try {			// 创建uri			URIBuilder builder = new URIBuilder(url);			if (param != null) {				for (String key : param.keySet()) {					builder.addParameter(key, param.get(key));				}			}			URI uri = builder.build(); 			// 创建http GET请求			HttpGet httpGet = new HttpGet(uri); 			// 执行请求			response = httpclient.execute(httpGet);			// 判断返回状态是否为200			if (response.getStatusLine().getStatusCode() == 200) {				resultString = EntityUtils.toString(response.getEntity(), "UTF-8");			}		} catch (Exception e) {			e.printStackTrace();		} finally {			try {				if (response != null) {					response.close();				}				httpclient.close();			} catch (IOException e) {				e.printStackTrace();			}		}		return resultString;	} 	public static String doGet(String url) {		return doGet(url, null);	} 	public static String doPost(String url, Map<String, String> param) {		// 创建Httpclient对象		CloseableHttpClient httpClient = HttpClients.createDefault();		CloseableHttpResponse response = null;		String resultString = "";		try {			// 创建Http Post请求			HttpPost httpPost = new HttpPost(url);			// 创建参数列表			if (param != null) {				List<NameValuePair> paramList = new ArrayList<>();				for (String key : param.keySet()) {					paramList.add(new BasicNameValuePair(key, param.get(key)));				}				// 模拟表单				UrlEncodedFormEntity entity = new UrlEncodedFormEntity(paramList,"utf-8");				httpPost.setEntity(entity);			}			// 执行http请求			response = httpClient.execute(httpPost);			resultString = EntityUtils.toString(response.getEntity(), "utf-8");		} catch (Exception e) {			e.printStackTrace();		} finally {			try {				response.close();			} catch (IOException e) {				// TODO Auto-generated catch block				e.printStackTrace();			}		} 		return resultString;	} 	public static String doPost(String url) {		return doPost(url, null);	}		public static String doPostJson(String url, String json) {		// 创建Httpclient对象		CloseableHttpClient httpClient = HttpClients.createDefault();		CloseableHttpResponse response = null;		String resultString = "";		try {			// 创建Http Post请求			HttpPost httpPost = new HttpPost(url);			// 创建请求内容			StringEntity entity = new StringEntity(json, ContentType.APPLICATION_JSON);			httpPost.setEntity(entity);			// 执行http请求			response = httpClient.execute(httpPost);			resultString = EntityUtils.toString(response.getEntity(), "utf-8");		} catch (Exception e) {			e.printStackTrace();		} finally {			try {				response.close();			} catch (IOException e) {				// TODO Auto-generated catch block				e.printStackTrace();			}		} 		return resultString;	}}

点这里可以跳转到人工智能网站

发表评论