通过httpclient向服务器传送数据并获得返回值
来源:互联网 发布:javascript map reduce 编辑:程序博客网 时间:2024/05/17 09:08
先上传主要代码
Gson gson = new Gson();
JsonObject values2=new JsonObject();
values2.addProperty("deviceId", "98:3b:34:df:2c:12");
String json = gson.toJson(values2);
String json64 = Base64.encodeToString(json.getBytes(), Base64.NO_WRAP);
ArrayList<NameValuePair> nvp = new ArrayList<NameValuePair>();
nvp.add(new BasicNameValuePair("type", "userinfo"));
nvp.add(new BasicNameValuePair("action", "001"));
nvp.add(new BasicNameValuePair("content", json64));
nvp.add(new BasicNameValuePair("contentkey", "#HQ*"));
HttpClient httpClient = new DefaultHttpClient();
HttpConnectionParams.setConnectionTimeout(httpClient.getParams(), 6000000);
HttpConnectionParams.setSoTimeout(httpClient.getParams(), 120000);
HttpPost httpPost = new HttpPost(url);
try {
httpPost.setEntity(new UrlEncodedFormEntity(nvp,HTTP.UTF_8));
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
try {
response = httpClient.execute(httpPost);
} catch (ClientProtocolException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
try {
String result=EntityUtils.toString(response.getEntity());
String[] split=result.split("#");
String s=split[2];
String s1=s.substring(0,s.length()-1);
String resjson64 = new String(Base64.decode(s1, Base64.NO_WRAP));
System.out.println(resjson64+"**********");
try {
JSONObject jsonObj = new JSONObject(resjson64);
String uid=jsonObj.getString("ubid");
System.out.println(uid);
} catch (JSONException e) {
e.printStackTrace();
}
} catch (ParseException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
});
将要上传的数据封装成JSON格式,通过Base64把json数据编码,然后返回的信息通过Base64.decode(s1, Base64.NO_WRAP)解码,注意这里一定要通过String resjson64 = new String(Base64.decode(s1, Base64.NO_WRAP));把解码的字符数组转换成String,否则得出的数据有误。
response.getEntity()在代码中只能出现一次,否则会报已使用异常。
- 通过httpclient向服务器传送数据并获得返回值
- 通过nsurlsession向服务器传送json数据
- 向串口发送数据,并获得返回值
- 怎么通过http向服务器发送数据并接受到返回的数据
- echarts通过ajax向服务器发送post请求,servlet从数据库读取数据并返回前端
- http服务向服务器发送并接受数据--------------HttpClient对象向服务器发送并接受数据
- 通过libcurl向服务器发送数据,返回的数据说明
- Android向Web服务器发送Post请求并返回数据
- Android向Web服务器发送Post请求并返回数据
- AJAX向服务器发送请求并返回json数据
- Go语言(服务器开发):客户端向服务器发送数据并接收返回数据
- Java 通过httpClient Post方式提交xml,并从服务端返回数据
- Java 通过HttpClient Post方式提交json,并从服务端返回json数据
- 通过NSURLRequest获得服务器返回header
- servlet以json格式向ajax传送数据并处理
- Android向服务器传送和接收数据的方法汇总
- 通过 HttpClient 从指定服务器获取数据
- jQuery通过Ajax向PHP服务端发送请求并返回JSON数据
- redis中使用redis-dump导出、导入、还原数据实例
- 设计模式: 自己手动写一个命令模式
- 在controller里面弹窗不执行
- CSS字体和文本
- exfat文件系统-----exfat volume layout
- 通过httpclient向服务器传送数据并获得返回值
- 1002. A+B for Polynomials (25)
- 如何通过IFeatureLayer 的到图层所属路径【 Layer不存在FeatureDataset中】
- 为什么做java的web开发我们会使用struts2,springMVC和spring这样的框架?
- Container With Most Water
- 委托其实不是那么苦涩难懂
- OC基础回顾(十三)代码块和并发性
- 【算法导论】字符串匹配
- iOS 代码块传值小结