对于http的请求与响应,可以使用commons-httpclient.jar来实现数据的接收与发送,代码如下:
package com.project.util; import java.util.Collection; import java.util.HashMap; import java.util.Iterator; import java.util.Map; import org.apache.commons.httpclient.HttpClient; import org.apache.commons.httpclient.MultiThreadedHttpConnectionManager; import org.apache.commons.httpclient.NameValuePair; import org.apache.commons.httpclient.methods.PostMethod; /** * Http请求公共类 * @author Administrator * */ public class HttpPost { private static HttpClient httpclient = null; private static int iTimeOut = 5000; @SuppressWarnings("rawtypes") private static Map map = new HashMap(); private static final Object object = new Object(); private String postUrl = null; private HttpPost() { } public static HttpPost getInstance(String sUrl) { HttpPost instance = null; if((instance = (HttpPost) map.get(sUrl)) == null) { synchronized (object) { if((instance = (HttpPost)map.get(sUrl)) == null) { if(httpclient == null) { MultiThreadedHttpConnectionManager manager = new MultiThreadedHttpConnectionManager(); httpclient = new HttpClient(manager); } instance = new HttpPost(); instance.postUrl = sUrl; } } } return instance; } public String post(Map map) { return post(map, "application/x-www-form-urlencoded", "Mozilla/4.0"); } public String post(Map map, String contentType, String userAgent) { if(iTimeOut >= 0) { httpclient.getHttpConnectionManager().getParams().setConnectionTimeout(iTimeOut); } else { httpclient.getHttpConnectionManager().getParams().setConnectionTimeout(0); } PostMethod method = new PostMethod(postUrl); method.addRequestHeader("Content-Type", contentType); method.addRequestHeader("User-Agent", userAgent); // 处理需要发送的字符串 NameValuePair[] valuePairs = new NameValuePair[map.size()]; Collection collection = map.entrySet(); Iterator iterator = collection.iterator(); int i = 0; while(iterator.hasNext()) { String strKey = ((Map.Entry)iterator.next()).getKey().toString(); valuePairs[(i++)] = new NameValuePair(strKey, (String)map.get(strKey)); } method.setRequestBody(valuePairs); String responseStr = ""; try { httpclient.executeMethod(method); String charSet = method.getResponseCharSet(); responseStr = new String(method.getResponseBodyAsString().getBytes(charSet), "ISO8859-1"); } catch(Exception e) { e.printStackTrace(); } return responseStr; } }
相关推荐
4. 异步与同步:为了提高用户体验,工具类通常会提供异步请求功能,如`sendAsyncRequest(url, callback)`,并在回调函数中处理响应结果。同步请求则会阻塞当前线程直到请求完成。 5. 错误处理:工具类应具备处理...
Https请求工具类,Java实现http请求,https请求 本篇文章将详细介绍如何使用Java语言实现Http和Https请求的工具类,包括如何建立Https连接、如何实现Post请求、如何处理SSL验证等内容。 在Java中,使用...
HTTP 请求工具类是 Java 语言中一个常用的工具类,用于发送 HTTP 请求并处理响应结果。本文将对 HttpUtils 发送 HTTP 请求工具类进行详细的讲解,包括其实现原理、关键代码分析和使用示例。 HTTP 请求基础 在了解 ...
在IT行业中,HTTP请求工具类是开发者们进行系统间数据交互的重要工具,它使得我们可以方便地发送各种HTTP请求,如GET、POST等,确保了不同系统间的通信稳定性和效率。"http请求工具类"通常是一个封装了HTTP客户端...
通过这个工具类,开发者可以轻松地发起HTTPS请求,获取服务器响应,并进行数据交互,同时确保通信过程的安全性。在实际项目中,这样的工具类能够提高代码的可复用性和维护性,降低网络请求的复杂度。
本篇文章将详细讲解一个简单的Java工具类,用于发送HTTP请求,该工具类名为HttpURLUtils。 首先,让我们理解HTTP协议的基本概念。HTTP(超文本传输协议)是互联网上应用最为广泛的一种网络协议,它定义了客户端(如...
首先,`HttpUtil`类通常用于封装HTTP请求的操作。在Java中,我们可以使用`java.net.HttpURLConnection`或`org.apache.http.client.HttpClient`(Apache HttpClient库)来发送HTTP请求。这两个方法各有优劣:`...
这个"angular http请求工具类"很可能是开发人员为了简化HTTP请求操作而创建的一个自定义服务。通常,这样的工具类会封装Angular内置的HttpClient模块,提供更方便、更易用的API接口。下面我们将详细探讨Angular中的...
5. **工具类的设计**:这个“http请求工具类”很可能是对上述API的封装,提供了一种简洁的调用方式,例如,可能包含静态方法来执行GET或POST请求,参数化请求URL、请求头和请求体,返回响应结果等。这样的工具类提高...
用户可以调用 `doGetJson` 或 `doPostJson` 方法,传入相应的 URL、Header 和参数,工具类会处理 HTTP 请求的细节,返回服务器响应的数据。 7. **Apache HttpClient 库的功能**: - 支持各种 HTTP 特性,如重定向...
HttpClient允许开发者发起GET、POST等HTTP请求,并处理响应。使用HttpClient时,需要创建HttpClient对象,然后构建HttpGet或HttpPost对象设置请求参数,最后执行execute方法获取响应。虽然HttpClient在Android 6.0...
总结来说,`HttpsUtils.java`是一个用于简化Java程序中HTTPS POST请求的工具类,它隐藏了复杂的SSL/TLS配置和HTTP连接管理,使得开发者可以更加专注于业务逻辑。在实际开发中,此类可以帮助提高代码的可读性和可维护...
在Java编程中,HTTP通用工具类是一个非常实用的组件,它可以帮助开发者简化HTTP请求和响应的处理过程。HTTP协议是互联网上应用最广泛的一种网络协议,用于从万维网服务器传输超文本到本地浏览器。一个良好的HTTP通用...
4. **处理响应**:工具类应该负责接收服务器的响应,并提供获取响应码、响应头和响应体的方法。例如,可以提供`int getResponseCode()`,`Map, String> getResponseHeaders()`和`String getResponseBody()`这样的...
在PHP编程环境中,HTTP请求工具扮演着至关重要的角色,它们帮助开发者轻松地与远程服务器进行交互,发送GET、POST等不同类型的HTTP请求。本话题主要围绕"PHP中的HTTP请求工具",尤其是对cURL库的基本封装,以实现更...
在处理请求参数时,我们需要考虑到第三方的提交方式,这可能是POST的Http请求方法,提交报文的时候指定ContentType为application/json或者application/x-www-form-urlencoded。在这种情况下,我们需要兼容这两种...
AFNetworking提供了GET、POST、PUT、DELETE等多种HTTP请求方式,并支持上传和下载任务,以及JSON、XML等数据解析。此外,AFNetworking还支持自定义请求头、请求参数、响应序列化等功能,极大地简化了网络编程的工作...
总结起来,"HTTP请求响应公共方法"是开发中必不可少的工具,它们帮助我们与远程服务器进行数据交互。通过理解HTTP协议和RESTful原则,我们可以设计出高效、易用的接口。在Java中,可以利用各种库或内置类实现这些...
本文将详细介绍一个封装了HTTP GET和POST请求的工具类,以及如何使用此类进行网络请求。该工具类支持HTTPS,确保数据传输的安全性。 首先,我们来看`HttpUtils`类,这是核心的网络请求工具类。在`HttpUtils`中,...