import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.net.URL;
import java.net.URLConnection;
public class HttpRequest {
/**
* 向指定 URL 发送POST方法的请求
*
* @param url
* 发送请求的 URL
* @param param
* 请求参数,
* @return 所代表远程资源的响应结果
*/
public static String sendPost(String url, String param) {
PrintWriter out = null;
BufferedReader in = null;
String result = "";
try {
URL realUrl = new URL(url);
// 打开和URL之间的连接
URLConnection conn = realUrl.openConnection();
// 设置通用的请求属性
conn.setRequestProperty("accept", "*/*");
conn.setRequestProperty("connection", "Keep-Alive");
conn.setRequestProperty("user-agent",
"Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1;SV1)");
// 发送POST请求必须设置如下两行
conn.setDoOutput(true);
conn.setDoInput(true);
// 获取URLConnection对象对应的输出流
out = new PrintWriter(conn.getOutputStream());
// 发送请求参数
out.print(param);
// flush输出流的缓冲
out.flush();
// 定义BufferedReader输入流来读取URL的响应
in = new BufferedReader(
new InputStreamReader(conn.getInputStream()));
String line;
while ((line = in.readLine()) != null) {
result += line;
}
} catch (Exception e) {
System.out.println("发送 POST 请求出现异常!"+e);
e.printStackTrace();
}
//使用finally块来关闭输出流、输入流
finally{
try{
if(out!=null){
out.close();
}
if(in!=null){
in.close();
}
}
catch(IOException ex){
ex.printStackTrace();
}
}
return result;
}
public static void main(String[] args) {
String head ="<?xml version='1.0' encoding='GBK'?><PGK><DATA><![CDATA[";
String body = "<?xml version='1.0' encoding='GB2312'?><CBSERPPGK><INFO><FUNNAM>APPAYSAV</FUNNAM></INFO><APPAYSAVX><BNKTYP>CMB</BNKTYP><BUSTYP>0</BUSTYP><CCYNBR>10</CCYNBR><CLTACC>000110100002</CLTACC><CLTNBR>0003</CLTNBR><EPTDAT>2015-09-24</EPTDAT><EPTTIM>18:16:31</EPTTIM><EXTTX1>摘要信息03</EXTTX1><OPRMOD>3</OPRMOD><OPRTYP>202</OPRTYP><REFNBR>NF0001</REFNBR><REVACC>8512384214654654</REVACC><REVBNK>招商银行科技园支行</REVBNK><REVCIT>深圳市</REVCIT><REVEML></REVEML><REVMOB></REVMOB><REVNAM>招商银行</REVNAM><REVPRV>广东省</REVPRV><TRSAMT>200.00</TRSAMT><TRSUSE>摘要信息01</TRSUSE></APPAYSAVX></CBSERPPGK>";
String end ="]]></DATA><CHECKCODE>Z87E4CD44</CHECKCODE></PGK>";
//其中127.1.0.1 是ip地址,1234 是端口号
String sr=HttpRequest.sendPost("http://127.0.0.1:1234", head+body+end);
System.out.println(sr);
}
}
分享到:
相关推荐
HttpPost httpPost = new HttpPost("http://example.com"); httpPost.setEntity(new StringEntity("Hello, World!")); response = httpClient.execute(httpPost); responseBody = EntityUtils.toString(response...
当我们需要与服务器进行数据交互时,HTTP POST方法是常用的一种技术。本实例将详细讲解如何在C#环境中实现HTTP POST请求,以实现数据的发送和接收。 HTTP POST方法是HTTP协议中的一个请求类型,它允许客户端向...
### Lua解码HTTP POST数据知识点解析 #### 一、HTTP POST请求概述 HTTP协议作为互联网上应用最为广泛的一种网络协议,其POST方法主要用于向指定资源提交数据进行处理请求(例如提交表单或者上传文件)。数据被包含...
"libevent 多线程 HTTP post服务器" 指的是一种使用libevent库构建的、支持多线程处理HTTP POST请求的服务器。libevent是一个事件通知库,它提供了一种方法来执行非阻塞I/O操作,这对于高性能网络服务器尤其重要。而...
3、打开httppost.exe 即可运行本软件。 Jadder Http 测试工具 E-Mail: jadderbao@163.com 软件功能: ver 0.3 1、添加检测POST/GET返回内容格式,如为json格式就自动格式化显示 2、添加打开,保存文件时,自动...
在这个场景中,我们关注的是如何利用Kettle传递动态参数并调用HTTP POST接口将数据入库。下面将详细阐述这个过程。 1. **Kettle简介** Kettle是一款开源的ETL工具,它提供了图形化的界面,使得用户可以通过拖拽和...
**HttpPost的使用详解** 在Java开发中,尤其是处理网络请求时,`HttpPost`是一个非常重要的类,它位于`org.apache.http.client.methods`包下,是Apache HttpClient库的一部分。`HttpPost`用于向指定URL发送POST请求...
当我们无法直接引用特定的jar包或者面临jar包冲突时,通过HTTP POST方式调用WebService成为了一种有效的解决方案。本文将深入探讨如何在Java环境中,利用HTTP POST方法调用WebService,并解决可能遇到的问题。 首先...
本压缩包文件"rookie_httppost"提供了一个关于如何使用Java实现HttpPost请求的实例,这对于初学者或者开发者来说是一份非常实用的参考资料。 首先,我们来理解HttpPost请求的基本概念。HTTP协议定义了多种请求方法...
在IT领域,网络通信是应用程序之间交互...在提供的压缩包文件HttpPost中,可能包含了详细的示例代码和参考资料,供你进一步学习和实践。通过不断探索和实践,你将能够熟练掌握Qt中的网络编程技巧,提升自己的开发能力。
标题“delphi_demo HttpPost+JSON”涉及到的是一个Delphi编程示例,它演示了如何使用HTTP POST方法发送JSON格式的数据。Delphi是Embarcadero Technologies开发的一种面向对象的编程语言,常用于Windows应用程序开发...
在这个特定的场景中,我们关注的是如何利用VC通过HttpGet和HttpPost方法与WebService进行交互,并处理返回的Json数据。 HttpGet和HttpPost是HTTP协议中的两种主要请求方法。HttpGet是一种无状态、幂等的请求方法,...
HttpPost httpPost = new HttpPost("http://example.com/api/data"); // 设置POST请求的参数 String json = "{\"key\":\"value\"}"; StringEntity input = new StringEntity(json); input.setContentType(...
HTTP Post XML 方法 HTTP Post XML 方法是一种常用的数据传输方式,通过 HTTP 协议将 XML 格式的数据从客户端发送到服务端。在现实应用中,HTTP Post XML 方法广泛应用于不同行业和领域,例如电信运营商之间的数据...
首先,Java中发送HTTP POST请求通常会用到`HttpURLConnection`类或者第三方库如Apache HttpClient或OkHttp。下面我们将主要使用`HttpURLConnection`来演示,因为它内置在JDK中,无需额外引入依赖。 1. **创建HTTP...
本文将深入探讨如何使用C++实现HTTP POST服务端和客户端,特别是涉及JSON格式的数据交换。 首先,HTTP POST是Web服务中最常用的方法之一,用于向服务器发送数据。在C++中实现HTTP POST,你需要理解HTTP协议的基本...
C#实现Http post方式 服务端+客户端源码,修改成你的ip端口,直接运行可用 【核心代码】 //提供一个简单的、可通过编程方式控制的 HTTP 协议侦听器。此类不能被继承。 httpobj = new HttpListener(); //定义url及...
调用pb开发的webserver(HTTP POST) /*POST /webservice/n_webservice.asmx/uf_ab HTTP/1.1 Host: localhost Content-Type: application/x-www-form-urlencoded Content-Length: length ll_a=string&ll_b=string*...
当涉及到网络通信,特别是向Web服务发送数据时,HTTP POST请求是非常常见的操作。在这个示例中,我们将探讨如何在C#中使用HTTP POST方法发送JSON数据,以及如何利用开源库Newtonsoft.Json来处理JSON序列化和反序列化...
本主题聚焦于使用C语言实现HTTP POST方法上传文件和发送JSON数据,这对于开发嵌入式系统、移动应用后端或者任何需要轻量级网络交互的项目来说尤其有用。 HTTP POST方法通常用于向服务器发送数据,比如用户填写的...