对于java用发送http请求,请求内容为xml格式
- import java.io.BufferedInputStream;
- import java.io.BufferedReader;
- import java.io.ByteArrayOutputStream;
- import java.io.IOException;
- import java.io.InputStream;
- import java.io.InputStreamReader;
- import java.io.OutputStreamWriter;
- import java.net.URI;
- import java.net.URL;
- import java.net.URLConnection;
- import org.apache.commons.httpclient.HttpClient;
- import org.apache.commons.httpclient.HttpStatus;
- import org.apache.commons.httpclient.methods.PostMethod;
- /**
- * 测试调用一些meeting第三方接口
- * @author Jack.Song
- */
- public class TestMeetingInterface {
- /**
- * @param args
- */
- public static void main(String[] args) {
- String url = "http://192.168.0.68/integration/xml";
- TestMeetingInterface tmi = new TestMeetingInterface();
- System.out.println(tmi.post(url,"listSummaryMeeting.xml"));
- /*//判断当前系统是否支持Java AWT Desktop扩展
- if(java.awt.Desktop.isDesktopSupported()){
- try {
- URI path = tmi.getClass().getResource("/listSummaryMeeting.xml").toURI();
- System.out.println(path);
- //创建一个URI实例
- // java.net.URI uri = java.net.URI.create(path);
- //获取当前系统桌面扩展
- java.awt.Desktop dp = java.awt.Desktop.getDesktop();
- //判断系统桌面是否支持要执行的功能
- if(dp.isSupported(java.awt.Desktop.Action.BROWSE)){
- //获取系统默认浏览器打开链接
- dp.browse(path);
- }
- } catch (Exception e) {
- e.printStackTrace();
- }
- }*/
- }
- /**
- * 发送xml数据请求到server端
- * @param url xml请求数据地址
- * @param xmlString 发送的xml数据流
- * @return null发送失败,否则返回响应内容
- */
- public String post(String url,String xmlFileName){
- //关闭
- System.setProperty("org.apache.commons.logging.Log", "org.apache.commons.logging.impl.SimpleLog");
- System.setProperty("org.apache.commons.logging.simplelog.showdatetime", "true");
- System.setProperty("org.apache.commons.logging.simplelog.log.org.apache.commons.httpclient", "stdout");
- //创建httpclient工具对象
- HttpClient client = new HttpClient();
- //创建post请求方法
- PostMethod myPost = new PostMethod(url);
- //设置请求超时时间
- *1000);
- String responseString = null;
- try{
- //设置请求头部类型
- myPost.setRequestHeader("Content-Type","text/xml");
- myPost.setRequestHeader("charset","utf-8");
- //设置请求体,即xml文本内容,注:这里写了两种方式,一种是直接获取xml内容字符串,一种是读取xml文件以流的形式
- // myPost.setRequestBody(xmlString);
- InputStream body=this.getClass().getResourceAsStream("/"+xmlFileName);
- myPost.setRequestBody(body);
- // myPost.setRequestEntity(new StringRequestEntity(xmlString,"text/xml","utf-8"));
- int statusCode = client.executeMethod(myPost);
- if(statusCode == HttpStatus.SC_OK){
- BufferedInputStream bis = new BufferedInputStream(myPost.getResponseBodyAsStream());
- ];
- ByteArrayOutputStream bos = new ByteArrayOutputStream();
- ;
- ){
- , count);
- }
- byte[] strByte = bos.toByteArray();
- ,strByte.length,"utf-8");
- bos.close();
- bis.close();
- }
- }catch (Exception e) {
- e.printStackTrace();
- }
- myPost.releaseConnection();
- return responseString;
- }
- /**
- * 用传统的URI类进行请求
- * @param urlStr
- */
- public void testPost(String urlStr) {
- try {
- URL url = new URL(urlStr);
- URLConnection con = url.openConnection();
- con.setDoOutput(true);
- con.setRequestProperty("Pragma:", "no-cache");
- con.setRequestProperty("Cache-Control", "no-cache");
- con.setRequestProperty("Content-Type", "text/xml");
- OutputStreamWriter out = new OutputStreamWriter(con.getOutputStream());
- String xmlInfo = getXmlInfo();
- System.out.println("urlStr=" + urlStr);
- // System.out.println("xmlInfo=" + xmlInfo);
- out.write(new String(xmlInfo.getBytes("UTF-8")));
- out.flush();
- out.close();
- BufferedReader br = new BufferedReader(new InputStreamReader(con
- .getInputStream()));
- String line = "";
- for (line = br.readLine(); line != null; line = br.readLine()) {
- System.out.println(line);
- }
- } catch (Exception e) {
- e.printStackTrace();
- }
- }
- private String getXmlInfo() {
- StringBuilder sb = new StringBuilder();
- sb.append("<?xml version='1.0' encoding='UTF-8'?>");
- sb.append("<Message>");
- sb.append(" <header>");
- sb.append(" <action>readMeetingStatus</action>");
- sb.append(" <service>meeting</service>");
- sb.append(" <type>xml</type>");
- sb.append(" <userName>admin</userName>");
- sb.append(" <password>admin</password>");
- sb.append(" <siteName>box</siteName>");
- sb.append(" </header>");
- sb.append(" <body>");
- sb.append(" <confKey>43283344</confKey>");
- sb.append(" </body>");
- sb.append("</Message>");
- return sb.toString();
- }
- }
对于java用发送http请求,请求内容为xml格式的更多相关文章
- Java发HTTP POST请求(内容为xml格式)
Java发HTTP POST请求(内容为xml格式) 一.POST请求 服务器地址:http://5.0.217.50:17001/VideoSend 服务器提供的是xml格式的http接口,接口定义 ...
- Java发送HTTP POST请求(内容为xml格式)
今天在给平台用户提供http简单接口的时候,顺便写了个调用的Java类供他参考. 服务器地址:http://5.0.217.50:17001/VideoSend 服务器提供的是xml格式的h ...
- 如何设置Fiddler来拦截Java代码发送的HTTP请求,进行各种问题排查
我们使用Java的RestTemplate或者Apache的HTTPClient编程的时候,经常遇到需要跟踪Java 代码发送的HTTP请求明细的情况.和javascript代码在浏览器里发送请求可以 ...
- java发送http请求,内容为xml格式&&传统URI类请求
import java.io.BufferedInputStream; import java.io.BufferedReader; import java.io.ByteArrayOutputStr ...
- 提交post请求,参数为xml格式
import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import ...
- 利用Ajax把前端的数据封装成JSON格式发送到服务器端并写成XML格式在服务器的硬盘上
1.首先要在前端把要发送的东西(这里是一个实例化的car对象)都准备好,利用Ajax发送到服务器端,代码如下: <html xmlns="http://www.w3.org/1999/ ...
- Java 如何解析由String类型拼接的XML格式
String xml = new String(a);打印的xml 的值是 <?xml version= 1.0 encoding=gb2312?><weighData>< ...
- java解析Xml格式的字符串
最近在工作中,需要调别的接口,接口返回的是一个字符串,而且内容是xml格式的,结果在解析json的时候报错,最终修改了接口的返回方式,以Map返回, 才得以接收到这个xml的字符串,然后通过dom4j ...
- JAVA实现map集合转Xml格式
import java.util.Iterator; import java.util.SortedMap; import java.util.TreeMap; public class MainTe ...
随机推荐
- java_httpservice
http://blog.csdn.net/maosijunzi/article/details/41045181
- codevs 1256 打鼹鼠 LIS
题目链接 题目描述 Description 鼹鼠是一种很喜欢挖洞的动物,但每过一定的时间,它还是喜欢把头探出到地面上来透透气的. 根据这个特点阿Q编写了一个打鼹鼠的游戏:在一个n*n的网格中,在某些时 ...
- hdu 3397 Sequence operation 线段树
题目链接 给出n个数, 每个数是0或1, 给5种操作, 区间变为1, 区间变为0, 区间0,1翻转, 询问区间内1的个数, 询问区间内最长连续1的个数. 需要将数组开成二维的, 然后区间0, 1翻转只 ...
- APM代码学习笔记1
libraries目录 传感器 AP_InertialSensor 惯性导航传感器 就是陀螺仪加速计 AP_Baro 气压计 居然支持BMP085 在我印象中APM一直用高端的MS5611 AP_Co ...
- android-通知Notification
发送通知 public class MyActivity extends Activity { @Override protected void onCreate(Bundle savedInstan ...
- 脑波设备mindwave二次开发框架
神念科技提供的mindwave提供了脑波耳机和相应的游戏,这些游戏你可以通过购买神念科技的mindwave耳机来获取,这里不多作介绍. 我们作为程序员,如果有了相应的创意,也可以通过他们提供的二次开发 ...
- opencv 简单、常用的图像处理函数(2)
opencv的项目以来配置和环境变量的配置都很简单,对于我这个没有c++基础的来说,复杂的是opencv的api和一些大部分来自国外没有翻译的资料,以及一些常见的编码问题. 资料 opencv 中文a ...
- 原生javascript实现ajax,post参数
var json = { userid: userid, cid: cid, openid: openid, type: 1 }; // 原生ajax json = (function(obj){ / ...
- iOS开发笔记 基于wsdl2objc调用asp.net WebService
1.准备 先下载待会要用到的工具 WSDL2ObjC-0.6.zip WSDL2ObjC-0.7-pre1.zip 我用的是WSDL2ObjC-0.6.zip 1.1搭建asp.net WebServ ...
- Oracle中的Spool缓冲池技术可以实现Oracle导出txt格式文件
利用Oracle中的Spool缓冲池技术可以实现Oracle数据导出到文本文件 1.在Oracle PL/SQL中输入缓冲开始命令,并指定输出的文件名: spool d:output.txt; 2.设 ...