从远程服务器获取数据
2019独角兽企业重金招聘Python工程师标准>>>
package com.utils;
import java.io.IOException;
import java.io.InputStream;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import org.apache.http.HttpEntity;
import org.apache.http.HttpResponse;
import org.apache.http.NameValuePair;
import org.apache.http.ParseException;
import org.apache.http.client.ClientProtocolException;
import org.apache.http.client.HttpClient;
import org.apache.http.client.entity.UrlEncodedFormEntity;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.impl.client.DefaultHttpClient;
import org.apache.http.message.BasicNameValuePair;
import org.apache.http.protocol.HTTP;
import org.apache.http.util.EntityUtils;
import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;
public class TestHttp {
public static String HttpGet(String url) throws ClientProtocolException, IOException{
HttpClient httpClient=new DefaultHttpClient();
HttpGet httpGet=new HttpGet(url);
HttpResponse httpResponse= httpClient.execute(httpGet);
return getResult(httpResponse);
}
public static String getResult(HttpResponse response) throws ParseException, IOException{
String result="";
//如果发送成功...
if(response.getStatusLine().getStatusCode()==200){
result=EntityUtils.toString(response.getEntity());
return result;
}else{
return "服务器响应失败....TestHttp";
}
}
public static JSONArray JsonHttpGet(String url) throws ParseException, IOException, JSONException{
HttpClient httpClient=new DefaultHttpClient();
HttpGet httpGet=new HttpGet(url);
HttpResponse response= httpClient.execute(httpGet);
JSONArray json = null;
//如果发送成功...
if(response.getStatusLine().getStatusCode()==200){
//result=EntityUtils.toString(response.getEntity());
HttpEntity entity = response.getEntity();
InputStream is = entity.getContent();
byte[] bytes = new byte[256];
StringBuffer sb = new StringBuffer();
while (is.read(bytes) > 0) {
sb.append(new String(bytes));
bytes = new byte[256];
}
//new JSONArray(sb.toString())
json = new JSONArray(sb.toString());
//json = JSONObject.fromObject(sb.toString());
return json;
}else{
return null;
}
}
/**
* 模拟url访问 从特定的url中获取json
*
* @param urlStr
* @param params
* @return json object ,or null if failed
* 参数经过封装后传过来 ,提交为 post请求
*/
private static JSONObject getJsonFromUrl(String urlStr,
Map<String, String> params) {
HttpClient httpClient = new DefaultHttpClient();
HttpPost httpPost = new HttpPost(urlStr);
JSONObject json = null;
try {
if (params != null) {
Iterator<String> keys = params.keySet().iterator();
List<NameValuePair> nvps = new ArrayList<NameValuePair>();
while (keys.hasNext()) {
String key = keys.next();
nvps.add(new BasicNameValuePair(key, params.get(key)));
}
httpPost.setEntity(new UrlEncodedFormEntity(nvps, HTTP.UTF_8));
}
HttpResponse response = httpClient.execute(httpPost);
HttpEntity entity = response.getEntity();
InputStream is = entity.getContent();
byte[] bytes = new byte[256];
StringBuffer sb = new StringBuffer();
while (is.read(bytes) > 0) {
sb.append(new String(bytes));
bytes = new byte[256];
}
//json ="";//JSONObject.fromObject(sb.toString());
} catch (Exception e) {
e.printStackTrace();
}
return json;
}
}
转载于:https://my.oschina.net/u/243698/blog/513873
从远程服务器获取数据相关推荐
- 黯然微信小程序杂记(一):从服务器获取数据 后端语言php
黯然学编程 之 微信小程序杂记(一):从服务器获取数据 后端语言php 一.功能描述 二.服务器.数据库与微信小程序逻辑的关系 服务器 数据库 与微信小程序逻辑关系 三.请求数据的代码(可当做模板用) ...
- 从别的网站服务器获取数据,使用get()方法以GET方式从服务器获取数据
使用get()方法以GET方式从服务器获取数据 我的个人资料 $(function () { $("#btnShow").bind("click", funct ...
- linux讲日志暂停,linux – Rsyslog在日志轮换后停止向远程服务器发送数据
在我的配置中,我有rsyslog负责使用imfile跟踪/home/user/my_app/shared/log/unicorn.stderr.log的更改.使用TCP将内容发送到另一个远程日志记录服 ...
- ajax请求获取服务器数据,jquery.ajax发布从app引擎服务器获取数据的请求
为noob问题道歉...... 您好,如何使用jQuery.ajax从appengine服务器的Python端获取数据?我知道如何使用ajax和适当的处理程序将数据发送到服务器,但我想知道是否有人可以 ...
- 微信公众号开发--微信消息可以直接点击,然后请求中控服务器获取数据
Demo 服务器发送的消息如下: 我们点击[医保],即可进行请求获取数据,如下: 实现方法 在返回的文字中,使用如下方法即可: <a href="weixin://bizmsgmenu ...
- MySQL数据库实现本地数据库和远程服务器数据库数据同步
项目中有两个数据库:本地数据库和远程服务器数据库.数据要在本地经过数据洗涤后才传上服务器数据库.之前用的Navicat工具,但是速度慢,且无法设置定时同步.后来改用Datax,它的效率真的非常高. D ...
- [安卓] 9、线程、VIEW、消息实现从TCP服务器获取数据动态加载显示
一.前言: 一般情况下从TCP服务器读取数据是放在一个线程里读的,但是刷新界面又不得不放在线程外面,所以需要用消息传递把线程里从TCP里获得的数据传送出来,然后根据数据对页面进行相应的刷新. 二.业务 ...
- 客户端网页API(二)——从服务器获取数据
在现代网站和应用中另一个常见的任务是从服务端获取个别数据来更新部分网页而不用加载整个页面. 这看起来是小细节却对网站性能和行为产生巨大的影响.所以我们将在这篇文章介绍概念和技术使它成为可能,例如: X ...
- 将远程服务器获取的linkedhashMap对象转为实体类对象
微服务中从其他服务获取过来的对象,本来传的是实体类对象 , 但是接受到的参数却是linkedhashMap类型的对象 , 如果强转成自定义的实体类型会报错,因此可以利用ObjectMapper转换. ...
最新文章
- 搜集了一些模型,精模低模都有
- Linux 下的五种 IO 模型
- 微信/QQ 中已停止访问该网页的处理办法
- 05-连接数据库方法
- C++实现软件自动更新功能
- elasticsearch手动创建和删除索引
- JavaScript——易班优课YOOC课群在线测试自动答题解决方案(十六)利用PC端和移动端BUG
- 研发的那些事3--接口之本
- Android Studio xml文件中的布局预览视图
- 提高程序员工作效率的11个技巧
- 用winformz时间格式不正确_巨峰葡萄不能膨大?错!在正确的时间,用对方法,收获优质果穗型...
- 001-为什么Java能这么流行
- python学习模型_python学习笔记(IO模型)
- CS20SI-tensorflow for research笔记: Lecture3
- 字典树Trie练习 HihoCoder 1014
- 具体案例 快速原型模型_3D快速成型技术需要传统加工方法30%~50%的工时和20%~35%的成本,可以如此地降低成本?...
- FullCalendar - 开源的多功能 JavaScript 日历插件
- 如何导入python标准库_Python标准库需要导入吗
- 不差钱!华为,给学生开百万年薪
- 解决在iOS复制失败问题 iOS/Android通用
热门文章
- 7-130 古风排版 (20 分)
- 如何监测服务器网络稳定性centos,centos下网络监测工具nethogs
- linux脚本监控网卡流量,Shell脚本实现linux监控网卡实时流量[带宽]的方法
- tomcat启动Configuration Error: deployment source ‘xxx:war exploded‘ is not valid
- 下载、安装Keil 5
- java 扫雷游戏_java的扫雷小游戏(超简单)
- 深度学习在CTR预估中的应用 文献收藏
- etcd部署简单说明
- SQL Server-聚焦在视图和UDF中使用SCHEMABINDING(二十六)
- Oracle字段增删改、添加约束