- 浏览: 290394 次
- 性别:
- 来自: 上海
文章分类
- 全部博客 (163)
- ETL (4)
- Oracle (24)
- Win (2)
- Apache (5)
- struts2 (1)
- ArcGIS (21)
- Java (17)
- other (6)
- JavaScript (4)
- Xml (4)
- c# (2)
- webSphere (5)
- Ext (2)
- Flex (35)
- Svn (3)
- tomcat (3)
- MyEclipse (4)
- MySQL (2)
- ibatis (2)
- log4j (4)
- spring (1)
- SqlServer (2)
- android (4)
- ios (3)
- SDE (2)
- mac (1)
- Linux (9)
- Mina2 (1)
最新评论
-
markss:
您好,请问kettle循环处理的内存泄漏问题是否已经解决了?毕 ...
Kettle -
1qqqqqq:
图呢 ???
Myeclipse 9.0集成FLASH BUILDER 4.5 -
hanyi366:
现在MyEclipse 都2014版了,好像MyEclipse ...
Visual Editor 插件 安装 -
cnjmwr:
MyEclipse8.6的Eclipse版本是3.5的 ve1 ...
Visual Editor 插件 安装 -
cloudphoenix:
大神 我特地登陆来回帖,真是帮了我的大忙了。看了一个多月的AS ...
FlexGlobals.topLevelApplication
* * * * Title: HttpRequestProxy.java * Project: HP - Common * Type: com.hengpeng.common.web.HttpRequestProxy * Author: benl * Create: 2007-7-3 ????3: 07: 07 * Copyright: Copyright(c)2007 * Company: * * / import java.io.BufferedReader; import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; import java.net.HttpURLConnection; import java.net.URL; import java.net.URLEncoder; import java.util.HashMap; import java.util.Iterator; import java.util.Map; import java.util.Map.Entry; import org.apache.log4j.Logger; /** * <pre> * HTTP请求代理类 * </pre> * * @author benl * @version 1.0, 2007-7-3 */public class HttpRequestProxy { /** * 连接超时 */private static int connectTimeOut = 5000; /** * 读取数据超时 */private static int readTimeOut = 10000; /** * 请求编码 */private static String requestEncoding = " GBK & quot; ; private static Logger logger = Logger.getLogger(HttpRequestProxy.class); /** * <pre> * 发送带参数的GET的HTTP请求 * </pre> * * @param reqUrl HTTP请求URL * @param parameters 参数映射表 * @return HTTP响应的字符串 */public static String doGet (String reqUrl, Map parameters, String recvEncoding) { HttpURLConnection url_con = null; String responseContent = null; try { StringBuffer params = new StringBuffer(); for (Iterator iter = parameters.entrySet().iterator(); iter .hasNext();) { Entry element = (Entry)iter.next(); params.append(element.getKey().toString()); params.append(" = "); params.append(URLEncoder.encode(element.getValue().toString(), HttpRequestProxy.requestEncoding)); params.append(" & amp; & quot;); } if (params.length() & gt; 0) { params = params.deleteCharAt(params.length() - 1); } URL url = new URL(reqUrl); url_con = (HttpURLConnection)url.openConnection(); url_con.setRequestMethod(" GET & quot;); System.setProperty(" sun.net.client.defaultConnectTimeout & quot; , String .valueOf(HttpRequestProxy.connectTimeOut)); // (单位:毫秒)jdk1.4换成这个,连接超时 System.setProperty("sun.net.client.defaultReadTimeout", String.valueOf(HttpRequestProxy.readTimeOut)); // (单位:毫秒)jdk1.4换成这个,读操作超时 // url_con.setConnectTimeout(5000); //(单位:毫秒)jdk // 1.5换成这个,连接超时 // url_con.setReadTimeout(5000); //(单位:毫秒)jdk 1.5换成这个,读操作超时 url_con.setDoOutput(true); byte[] b = params.toString().getBytes(); url_con.getOutputStream().write(b, 0, b.length); url_con.getOutputStream().flush(); url_con.getOutputStream().close(); InputStream in = url_con.getInputStream(); BufferedReader rd = new BufferedReader(new InputStreamReader(in, recvEncoding)); String tempLine = rd.readLine(); StringBuffer temp = new StringBuffer(); String crlf = System.getProperty("line.separator"); while (tempLine != null) { temp.append(tempLine); temp.append(crlf); tempLine = rd.readLine(); } responseContent = temp.toString(); rd.close(); in.close(); } catch (IOException e) { logger.error("网络故障", e); } finally { if (url_con != null) { url_con.disconnect(); } } return responseContent; } /** * <pre> * 发送不带参数的GET的HTTP请求 * </pre> * * @param reqUrl HTTP请求URL * @return HTTP响应的字符串 */public static String doGet(String reqUrl, String recvEncoding) { HttpURLConnection url_con = null; String responseContent = null; try { StringBuffer params = new StringBuffer(); String queryUrl = reqUrl; int paramIndex = reqUrl.indexOf("?"); if (paramIndex & gt; 0) { queryUrl = reqUrl.substring(0, paramIndex); String parameters = reqUrl.substring(paramIndex + 1, reqUrl .length()); String[] paramArray = parameters.split("&"); for (int i = 0; i & lt; paramArray.length; i++) { String string = paramArray[i]; int index = string.indexOf("="); if (index & gt; 0) { String parameter = string.substring(0, index); String value = string.substring(index + 1, string .length()); params.append(parameter); params.append("="); params.append(URLEncoder.encode(value, HttpRequestProxy.requestEncoding)); params.append("&"); } } params = params.deleteCharAt(params.length() - 1); } URL url = new URL(queryUrl); url_con = (HttpURLConnection)url.openConnection(); url_con.setRequestMethod("GET"); System.setProperty("sun.net.client.defaultConnectTimeout", String .valueOf(HttpRequestProxy.connectTimeOut)); // (单位:毫秒)jdk1.4换成这个,连接超时 System.setProperty("sun.net.client.defaultReadTimeout", String .valueOf(HttpRequestProxy.readTimeOut)); // (单位:毫秒)jdk1.4换成这个,读操作超时 // url_con.setConnectTimeout(5000); //(单位:毫秒)jdk // 1.5换成这个,连接超时 // url_con.setReadTimeout(5000); //(单位:毫秒)jdk 1.5换成这个,读操作超时 url_con.setDoOutput(true); byte[] b = params.toString().getBytes(); url_con.getOutputStream().write(b, 0, b.length); url_con.getOutputStream().flush(); url_con.getOutputStream().close(); InputStream in = url_con.getInputStream(); BufferedReader rd = new BufferedReader(new InputStreamReader(in, recvEncoding)); String tempLine = rd.readLine(); StringBuffer temp = new StringBuffer(); String crlf = System.getProperty("line.separator"); while (tempLine != null) { temp.append(tempLine); temp.append(crlf); tempLine = rd.readLine(); } responseContent = temp.toString(); rd.close(); in.close(); } catch (IOException e) { logger.error("网络故障", e); } finally { if (url_con != null) { url_con.disconnect(); } } return responseContent; } /** * <pre> * 发送带参数的POST的HTTP请求 * </pre> * * @param reqUrl HTTP请求URL * @param parameters 参数映射表 * @return HTTP响应的字符串 */public static String doPost(String reqUrl, Map parameters, String recvEncoding) { HttpURLConnection url_con = null; String responseContent = null; try { StringBuffer params = new StringBuffer(); for (Iterator iter = parameters.entrySet().iterator(); iter .hasNext();) { Entry element = (Entry)iter.next(); params.append(element.getKey().toString()); params.append("="); params.append(URLEncoder.encode(element.getValue().toString(), HttpRequestProxy.requestEncoding)); params.append("&"); } if (params.length() & gt; 0) { params = params.deleteCharAt(params.length() - 1); } URL url = new URL(reqUrl); url_con = (HttpURLConnection)url.openConnection(); url_con.setRequestMethod("POST"); System.setProperty("sun.net.client.defaultConnectTimeout", String .valueOf(HttpRequestProxy.connectTimeOut)); // (单位:毫秒)jdk1.4换成这个,连接超时 System.setProperty("sun.net.client.defaultReadTimeout", String .valueOf(HttpRequestProxy.readTimeOut)); // (单位:毫秒)jdk1.4换成这个,读操作超时 // url_con.setConnectTimeout(5000);//(单位:毫秒)jdk // 1.5换成这个,连接超时 // url_con.setReadTimeout(5000); //(单位:毫秒)jdk 1.5换成这个,读操作超时 url_con.setDoOutput(true); byte[] b = params.toString().getBytes(); url_con.getOutputStream().write(b, 0, b.length); url_con.getOutputStream().flush(); url_con.getOutputStream().close(); InputStream in = url_con.getInputStream(); BufferedReader rd = new BufferedReader(new InputStreamReader(in, recvEncoding)); String tempLine = rd.readLine(); StringBuffer tempStr = new StringBuffer(); String crlf = System.getProperty("line.separator"); while (tempLine != null) { tempStr.append(tempLine); tempStr.append(crlf); tempLine = rd.readLine(); } responseContent = tempStr.toString(); rd.close(); in.close(); } catch (IOException e) { logger.error("网络故障", e); } finally { if (url_con != null) { url_con.disconnect(); } } return responseContent; } /** * @return 连接超时(毫秒) * @see com.hengpeng.common.web.HttpRequestProxy#connectTimeOut */public static int getConnectTimeOut() { return HttpRequestProxy.connectTimeOut; } /** * @return 读取数据超时(毫秒) * @see com.hengpeng.common.web.HttpRequestProxy#readTimeOut */public static int getReadTimeOut() { return HttpRequestProxy.readTimeOut; } /** * @return 请求编码 * @see com.hengpeng.common.web.HttpRequestProxy#requestEncoding */public static String getRequestEncoding() { return requestEncoding; } /** * @param connectTimeOut 连接超时(毫秒) * @see com.hengpeng.common.web.HttpRequestProxy#connectTimeOut */public static void setConnectTimeOut(int connectTimeOut) { HttpRequestProxy.connectTimeOut = connectTimeOut; } /** * @param readTimeOut 读取数据超时(毫秒) * @see com.hengpeng.common.web.HttpRequestProxy#readTimeOut */public static void setReadTimeOut(int readTimeOut) { HttpRequestProxy.readTimeOut = readTimeOut; } /** * @param requestEncoding 请求编码 * @see com.hengpeng.common.web.HttpRequestProxy#requestEncoding */public static void setRequestEncoding(String requestEncoding) { HttpRequestProxy.requestEncoding = requestEncoding; } public static void main(String[] args) { Map map = new HashMap(); map.put("actionType", "1"); // map.put("issueId", "33"); String temp = HttpRequestProxy.doPost( "http://192.168.0.99/AgentPortal/autoHandler", map, "GBK"); System.out.println("返回的消息是:" + temp); } }
发表评论
-
Java中byte与16进制字符串的互相转换
2014-09-07 07:43 743Java中byte用二进制表示占用8位,而我们知道16进制 ... -
SynchronizedMap和ConcurrentHashMap的深入分析
2014-06-19 10:33 623在开始之前,先介绍下Map是什么? javadoc中对M ... -
多线程下使用 SimpleDateFormat 的问题
2014-03-18 12:38 771最近用到多线程写通信服务,发现在解析时间是一直莫名的错误, ... -
java内存限制
2012-07-12 20:38 930回顾一下java内存限制的几个参数的具体含义 -Xm ... -
UTC GMT CST时间
2012-07-05 15:59 2533GMT(Greenwich Mean Time,格林威治 ... -
java 操作 excel 2010
2012-03-14 15:28 1658前段时间,需要进行excel2010数据的解析。先是找组件, ... -
FLEX权限--使用RemoteObject交互结合spring AOP控制项目权限教程
2012-03-04 16:55 847FLEX使用remoteobject交互结合sprin ... -
iBatis中的insert如何返回个类数据库的主键
2012-02-24 11:03 991<SPAN style="COLOR: #ff ... -
java.util.ConcurrentModificationException异常
2012-01-14 12:59 9611、 今天在写一个带缓 ... -
JAVA中ArrayList 与 Vector 的线程安全问题
2012-01-13 18:45 3651JAVA中ArrayList是否允许两个线程同时进行插入和删除 ... -
java calendar
2011-12-22 16:27 1735import java.text.DateFormat; ... -
Servlet中init-param and content-param
2011-11-08 08:56 826Servlet中init-param and content- ... -
HttpRequestProxy 请求代理 post方法
2011-10-28 15:30 1373写道 * * * * Title: HttpR ... -
XmlHttpProxy
2011-08-23 08:41 1013XmlHttpProxy /* Copyright ... -
super.init(config)
2011-08-22 11:45 3009servlet的init(ServletConfig conf ... -
URL工具类
2011-08-18 14:45 1006package ssh.util; import ...
相关推荐
因为我们是发送POST请求,所以需要设置请求方法为POST: ```java connection.setRequestMethod("POST"); ``` 3. **设置请求属性** 通常,POST请求需要设置Content-Type,表明我们要发送的数据类型: ```...
根据给定的文件信息,我们可以总结出以下关于C#后台请求接口的方法(GET, POST)的知识点: ### C#后台请求接口方法概述 在Web开发过程中,前后端之间的数据交互非常关键,通常会使用HTTP协议中的GET和POST两种...
在本项目中,"Qt 写的http 请求使用POST Json" 提供了一个使用Qt库实现HTTP POST请求的方法,用于向服务器发送JSON格式的数据。下面我们将深入探讨这个主题。 首先,我们来了解Qt中的网络编程。Qt提供了...
在Windows Forms(Winform)应用开发中,GET和POST是两种常见的HTTP请求方法,用于从服务器获取或向服务器发送数据。这两个概念对于任何与Web交互的客户端程序设计都是至关重要的,尤其是在使用C#进行Winform编程时...
本主题聚焦于如何利用API实现HTTP请求,特别是支持POST和GET这两种最常见的HTTP方法。在Delphi 6这样的集成开发环境中,开发者经常需要与网络进行交互,获取或发送数据,而WinINet API库则为此提供了便利。 Delphi ...
POSTMAN是一款广泛使用的HTTP客户端工具,它允许开发者和测试人员进行HTTP请求,包括POST、GET、PUT等多种HTTP方法。在Web开发中,POSTMAN扮演着重要角色,它简化了API接口测试、调试和文档编制的过程。 一、POST...
* POST 请求方法不是幂等的,即多次请求可能会改变服务器端的状态。 * POST 请求方法通常用于提交表单数据、上传文件或创建新资源。 PUT 请求方法 PUT 请求方法用于将数据发送到服务器端,例如更新服务器端的资源...
本文将深入探讨如何使用HttpClient进行GET和POST请求,并提供相关的代码示例。 首先,GET请求是最常见的HTTP请求类型,通常用于获取资源。在HttpClient中,发送GET请求可以通过`HttpGet`类实现。以下是一个简单的...
Node.js实现HTTPS发起POST请求的知识点涉及多个方面,包括Node.js基础、HTTPS协议、HTTP POST请求以及Node.js内置模块的使用方法。 首先,Node.js是一种基于Chrome V8引擎的JavaScript运行环境,它允许开发者使用...
要实现C#中的POST请求,你需要创建一个客户端代理类来代表WCF服务。这可以通过使用`svcutil.exe`工具或者在Visual Studio中添加服务引用来完成。生成的代理类会包含方法,这些方法可以直接调用来调用服务的操作。 1...
当需要向服务器发送带有数据的请求时,POST方法通常比GET更合适,因为它可以处理更大的数据量且数据不会显示在URL中。在C#中,我们可以使用HttpClient类来实现POST请求。以下是一个基本的POST请求步骤: - 创建...
8. **执行请求并获取响应**:调用`execute()`方法发送POST请求并接收响应。 9. **处理响应内容**:通过响应实体获取输入流,从而读取服务器返回的数据。 10. **关闭资源**:确保所有打开的连接和资源都被正确关闭,...
3. **发送POST请求**:最后,使用requests库的`post()`方法发送POST请求,将payload作为"data"参数传递: ```python import requests url = "http://example.com/api" headers = {"Content-Type": "application...
### .NET POST 请求方法详解 在本篇文章中,我们将深入探讨如何使用.NET Framework来发起一个POST请求,并解析响应数据。示例代码展示了如何构建HTTP请求、设置必要的头部信息以及发送请求体。 #### 1. 基础概念 ...
可以通过以下方法判断当前请求是GET请求还是POST请求: * 在浏览器地址栏上直接编写URL提交的请求一定是GET请求。 * 使用热链接向服务器发送的请求一定是GET请求。 * 使用form表单提交数据的时候,如果method属性...
在发送POST请求时,我们需要指定请求的URL、请求头和请求体。在示例代码中,我们使用HttpGet对象来发送POST请求,并指定请求的URL、请求头和请求体。 使用HttpClient发送POST请求可以帮助我们与HTTPS服务器进行交互...
POST方法则用于向服务器提交数据,如表单填写内容,这些数据被包含在请求体中,不显示在URL上。 WinSock,全称为Windows Sockets,是Windows操作系统提供的API,用于实现TCP/IP协议栈的应用程序编程接口。使用...
常见的请求方法有GET和POST。 - **GET请求**:是最简单的HTTP请求方式,用于从服务器获取资源。它将参数附加在URL后面,不安全且有限制(通常2KB左右),适用于获取少量数据。 - **POST请求**:用于向服务器...
使用window.open()方法发送post请求
在上面的例子中,`post`方法没有设置请求体,这意味着它是一个真正的无参数POST请求。 #### 五、应用场景 无参数POST请求的应用场景相对较少,但在某些特定情况下仍然有用武之地: 1. **测试目的**:在进行集成...