Java 通过HttpURLConnection Post方式提交xml,并从服务端返回数据
2016-04-08 11:42
986 查看
这里面简单介绍下,HttpURLConnection连接服务器,并返回数据
客户端代码java代码:
服务端php代码:
返回结果:
name->周成林
age->22
Image->我们
客户端代码java代码:
import java.io.InputStream; import java.io.OutputStream; import java.net.HttpURLConnection; import java.net.URL; public class PostXml { public static void main(String args[]) { try { String xml = "<?xml version='1.0' encoding='UTF-8'?><group><name>周成林</name><age>22</age><Image>我们</Image></group>"; // 创建url资源 URL url = new URL("http://119.29.85.118//finance.php"); // 建立http连接 HttpURLConnection conn = (HttpURLConnection) url.openConnection(); // 设置允许输出 conn.setDoOutput(true); conn.setDoInput(true); // 设置不用缓存 conn.setUseCaches(false); // 设置传递方式 conn.setRequestMethod("POST"); // 设置维持长连接 conn.setRequestProperty("Connection", "Keep-Alive"); // 设置文件字符集: conn.setRequestProperty("Charset", "UTF-8"); //转换为字节数组 byte[] data = xml.getBytes(); // 设置文件长度 conn.setRequestProperty("Content-Length", String.valueOf(data.length)); // 设置文件类型: conn.setRequestProperty("contentType", "text/xml"); // 开始连接请求 conn.connect(); OutputStream out = conn.getOutputStream(); // 写入请求的字符串 out.write(data); out.flush(); out.close(); System.out.println(conn.getResponseCode()); // 请求返回的状态 if (conn.getResponseCode() == 200) { System.out.println("连接成功"); // 请求返回的数据 InputStream in = conn.getInputStream(); String a = null; try { byte[] data1 = new byte[in.available()]; in.read(data1); // 转成字符串 a = new String(data1); System.out.println(a); } catch (Exception e1) { // TODO Auto-generated catch block e1.printStackTrace(); } } else { System.out.println("no++"); } } catch (Exception e) { } } }
服务端php代码:
<?php @header("Content-type: text/html; charset=utf-8"); $file_in = file_get_contents("php://input"); $request=simplexml_load_string($file_in); foreach($request->children() as $childItem) { //输出xml节点名称和值 echo $childItem->getName() . "->".$childItem."<br />"; //其他操作省略 } ?>
返回结果:
name->周成林
age->22
Image->我们
相关文章推荐
- hisi平台mii网络模式和rmii网络模式的uboot制作
- Android编程实现TCP客户端的方法
- 使用telnet玩一下http
- 网络刷博器爬虫(while应用)
- jsp编译完成后显示的HTTP Status 404 - /MyWebBBS/servlet/RegisterServlet%20%7D其中的%20%7D什么意思
- HTTP学习笔记--HTTP报文
- Linux traceroute --追踪网络数据包
- jQuery ajax 请求HttpServlet返回[HTTP/1.1 405 Method not allowed]
- Flash存储的故事(http://alanwu.blog.51cto.com/3652632/1426457)
- 利用听云Server和听云Network实测Kubernetes和Mesos在高并发下的网络性能
- OC网络下载
- POCO库下访问HTTPS获取返回的JSON数据
- 如何从网络上获取图片转换成字节流或者保存到本地
- Linux netstat --检验本机各端口的网络连接情况
- Linux nc --网络工具
- 固网现代化服务:让铜线网络焕发青春
- Java访问https接口实现
- Nginx 开启http目录下载
- Http的常见问题
- System.Net.WebException: The operation has timed out at System.Net.HttpWebRequest.GetResponse()