公共代码参考(httpclient)
public class HttpClientUtils { private static final String CHARSET = "UTF-8"; /* * http get请求 * * @param url * * @param params * * @return */ public static String httpGet(String url, Map<String, String> params) { if (true == StringUtils.isEmpty(url)) { return null; } List<NameValuePair> pl = getParamList(params); // 转换参数 if (null != pl) { String urlparams = URLEncodedUtils.format(pl, CHARSET); url = url + "?" + urlparams; } DefaultHttpClient httpclient = new DefaultHttpClient(); HttpGet httpget = new HttpGet(url); try { HttpResponse response = httpclient.execute(httpget); HttpEntity entity = response.getEntity(); if (null != entity) { return EntityUtils.toString(entity); } } catch (ClientProtocolException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } return null; } /* * http post请求 * * @param url * * @param params * * @return */ public static String httpPost(String url, Map<String, String> params) { if (true == StringUtils.isEmpty(url)) { return null; } DefaultHttpClient httpclient = new DefaultHttpClient(); HttpPost httppost = new HttpPost(url); List<NameValuePair> pl = getParamList(params); // 转换参数 if (null != pl) { HttpEntity entity; try { entity = new UrlEncodedFormEntity(pl); httppost.setEntity(entity); } catch (UnsupportedEncodingException e) { e.printStackTrace(); } } try { HttpResponse response = httpclient.execute(httppost); HttpEntity entity = response.getEntity(); if (null != entity) { return EntityUtils.toString(entity); } } catch (ClientProtocolException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } return null; } /* * 创建标准的NameValuePair格式参数 * * @param params * * @return */ public static List<NameValuePair> getParamList(Map<String, String> params) { if (null == params || 0 == params.size()) { return null; } List<NameValuePair> list = new ArrayList<NameValuePair>(); for (Map.Entry<String, String> param : params.entrySet()) { list.add(new BasicNameValuePair(param.getKey(), param.getValue())); } return list; } }
- 测试用例
public class HttpClientUtilsTest extends TestCase { private static final String LOG_TAG = "HttpClientUtilsTest"; public void testHttpGet1(){ String url = "http://192.168.1.101:3000/gettest"; String result = HttpClientUtils.httpGet(url, null); System.out.println(result); Log.i(LOG_TAG, result); } public void testHttpGet2(){ String url = "http://192.168.1.101:3000/gettest"; Map<String,String> map = new HashMap<String,String>(); map.put("username", "fredric"); map.put("password", "fredrictoo"); String result = HttpClientUtils.httpGet(url, map); System.out.println(result); Log.i(LOG_TAG, result); } public void testHttpPost1(){ String url = "http://192.168.1.101:3000/posttest"; Map<String,String> map = new HashMap<String,String>(); map.put("username", "sinny"); map.put("password", "sinnytoo"); String result = HttpClientUtils.httpPost(url, map); System.out.println(result); Log.i(LOG_TAG, result); } }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)