HttpURLConnection请求
方法调用:
//测试 public static void main(String[] args) { Map map = new HashMap(); map.put("type", "update" ); map.put("loginName", "4" ); map.put("userpasswd", "96e79218965eb72c92a549dd5a330112" ); map.put("email", "4444@qq.com" ); JSONObject jsonObject = (JSONObject) JSONObject.toJSON(map); String strJsonObject=jsonObject.toString(); String url = "http://localhost:8080/xtmc/synchroUser/insertWebUser.do?userData="+strJsonObject; System.out.println("注册同步 "+url); String jsonString = HttpRequestUtil.sendPost(url); System.out.println("返回的结果是"+jsonString); }
sendPost(url)方法见链接:
http://www.cnblogs.com/zhuawang/archive/2012/12/08/2809380.html
或者:
/**
* 向指定 URL 发送POST方法的请求
*
* @param pathUrl 发送请求的 URL
* @return 所代表远程资源的响应结果
*/
public static String sendPost(String pathUrl) {
try {
URL url = new URL(pathUrl);
HttpURLConnection httpConn = (HttpURLConnection) url.openConnection(); // //设置连接属性
httpConn.setDoOutput(true);// 使用 URL 连接进行输出
httpConn.setDoInput(true);// 使用 URL 连接进行输入
httpConn.setUseCaches(false);// 忽略缓存
httpConn.setRequestMethod("POST");// 设置URL请求方法
String requestString = "客服端要以以流方式发送到服务端的数据..."; // 设置请求属性
// 获得数据字节数据,请求数据流的编码,必须和下面服务器端处理请求流的编码一致
byte[] requestStringBytes = requestString.getBytes("utf-8");
httpConn.setRequestProperty("Content-length", "" + requestStringBytes.length);
httpConn.setRequestProperty("Content-Type", "application/octet-stream");
httpConn.setRequestProperty("Connection", "Keep-Alive");// 维持长连接
httpConn.setRequestProperty("Charset", "UTF-8");
//
String name = URLEncoder.encode("黄武艺", "utf-8");
httpConn.setRequestProperty("NAME", name); // 建立输出流,并写入数据
OutputStream outputStream = httpConn.getOutputStream();
outputStream.write(requestStringBytes);
outputStream.close();
// 获得响应状态
int responseCode = httpConn.getResponseCode(); if (HttpURLConnection.HTTP_OK == responseCode) {// 连接成功
// 当正确响应时处理数据
StringBuffer sb = new StringBuffer();
String readLine;
BufferedReader responseReader;
// 处理响应流,必须与服务器响应流输出的编码一致
responseReader = new BufferedReader(new InputStreamReader(httpConn.getInputStream(), "utf-8")); while ((readLine = responseReader.readLine()) != null) {
sb.append(readLine).append("\n");
}
responseReader.close();
System.out.println(sb.toString());
return sb.toString();
}
} catch (Exception e) {
System.out.println(e.getStackTrace());
}
return null;
}
被请求方法(/synchroUser/insertWebUser.do ):
@RequestMapping("/synchroUser/insertWebUser.do")
public void insertWebUser(HttpServletResponse response,HttpServletRequest request,@RequestParam("userData") String userData) throws Exception {
JSONObject dataMap = null;
System.out.println("接收到的userData==="+userData);
try {
dataMap = JSONObject.parseObject(userData);
} catch (Exception e) {
System.out.println("参数解析错误!");
e.printStackTrace();
} String loginName = getJsonValue(dataMap, "loginName");
String userpasswd = getJsonValue(dataMap, "userpasswd");
String email = getJsonValue(dataMap, "email");
String type = getJsonValue(dataMap, "type"); } catch (Exception e) {
// TODO: handle exception
flag = "false";
e.printStackTrace();
}
response.getWriter().write("success");
} /**
* 获取json对象中的属性
* @param params json对象
* @param key 参数名
* @return
*/
private String getJsonValue(JSONObject params, String key) {
if (params == null || "".equals(key) || key == null) {
return null;
}
Object obj = params.get(key);
return obj == null ? null : obj.toString();
}
HttpURLConnection请求的更多相关文章
- HttpURLConnection请求数据流的写入(write)和读取(read)
URLConnection类给应用 程序 和web资源之间架设起了通信的桥梁,这些web资源通常是通过url来标记的,本文将讲述如何使用HttpURLConnection来访问web页面(发送数据流) ...
- Android使用HttpUrlConnection请求服务器发送数据详解
HttpUrlConnection是java内置的api,在java.net包下,那么,它请求网络同样也有get请求和post请求两种方式.最常用的Http请求无非是get和post,get请求可以获 ...
- 解决Fiddler不能监听Java HttpURLConnection请求的方法
在默认情况下,Fiddler不能监听Java HttpURLConnection请求.究其原因,Java的网络通信协议栈可能浏览器的通信协议栈略有区别,Fiddler监听Http请求的原理是 在应用程 ...
- 使用Fiddler监听java HttpURLConnection请求
使用Fiddler监听java HttpURLConnection请求
- 分享自己配置的HttpURLConnection请求数据工具类
>>该工具类传入string类型url返回string类型获取结果import java.io.BufferedReader;import java.io.InputStream;impo ...
- HttpURLConnection请求网络数据
//使用线程 new Thread(){ public void run() { try { //先创建出了一 ...
- HttpURLConnection请求接口
import java.io.BufferedInputStream; import java.io.BufferedReader; import java.io.DataOutputStream; ...
- 使用HttpURLConnection请求multipart/form-data类型的form提交
写一个小程序,模拟Http POST请求来从网站中获取数据.使用Jsoup(http://jsoup.org/)来解析HTML. Jsoup封装了HttpConnection的功能,可以向服务器提交请 ...
- HttpURLConnection请求网络数据的Post请求
//--------全局变量----------- //注册Url private String urlPath="http://101.200.142.201:8080/VideoP ...
随机推荐
- C# 字符串格式化
1.格式化货币(跟系统的环境有关,中文系统默认格式化人民币,英文系统格式化美元) string.Format("{0:C}",0.2) 结果为:¥0.20 (英文操作系统结果:$0 ...
- BZOJ1036[ZJOI2008]树的统计Count 题解
题目大意: 一棵树上有n个节点,编号分别为1到n,每个节点都有一个权值w.有一些操作:1.把结点u的权值改为t:2.询问从点u到点v的路径上的节点的最大权值 3.询问从点u到点v的路径上的节点的权值和 ...
- Leetcode Partition List
Given a linked list and a value x, partition it such that all nodes less than x come before nodes gr ...
- 转:jQuery插件开发精品教程,让你的jQuery提升一个台阶
要说jQuery 最成功的地方,我认为是它的可扩展性吸引了众多开发者为其开发插件,从而建立起了一个生态系统.这好比大公司们争相做平台一样,得平台者得天下.苹果,微软,谷歌等巨头,都有各自的平台及生态圈 ...
- POJ 3320 尺取法,Hash,map标记
1.POJ 3320 2.链接:http://poj.org/problem?id=3320 3.总结:尺取法,Hash,map标记 看书复习,p页书,一页有一个知识点,连续看求最少多少页看完所有知识 ...
- Maven_根据不同个环境打包, 获取不同的配置文件等等
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 3 ...
- ubuntu 12.04 安装wireshark
轉載自http://blog.chinaunix.net/uid-27064719-id-3786626.html 在ubuntu 12.04下安装wireshark软件之后,打开wireshark开 ...
- Lanterns
Lanterns 题目链接:http://acm.hust.edu.cn/vjudge/contest/view.action?cid=86640#problem/B 题目: Description ...
- [LintCode] Maximal Square 最大正方形
Given a 2D binary matrix filled with 0's and 1's, find the largest square containing all 1's and ret ...
- js流程控制语句
do...while语句 do...while语句是一种先运行,后判断的循环语句.也就是说,不管条件是否满足,至少先运行一次循环体. var box = 1; ...