项目中与对方进行数据交互时,对方提供了一套夸域json方式传递数据,并给出了一个js示例
$.getJSON(
"http://www.----aspx?callback=?",
{Name:"123",Pass:"123"},
function(json){
if(json.UserId==null){
alert("NO");
}else{
alert(json.UserId);
}
}
);
但是此方法处理数据时,只能在页面中进行,局限性很大。因此在具体实施时,使用了HttpClient来代替。
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.List;
import org.apache.http.HttpEntity;
import org.apache.http.HttpResponse;
import org.apache.http.HttpStatus;
import org.apache.http.NameValuePair;
import org.apache.http.client.HttpClient;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.client.utils.URLEncodedUtils;
import org.apache.http.impl.client.DefaultHttpClient;
import org.apache.http.message.BasicNameValuePair;
import org.apache.http.protocol.HTTP;
import org.json.JSONException;
import org.json.JSONObject;
import org.json.JSONTokener;
/**
* 使用HttpClient请求页面并返回json格式数据.
* 对方接收的也是json格式数据。
* 因此使用HttpGet。
* */
public class Json {
public static void main(String[] args) throws JSONException {
JSONObject json = new JSONObject();
List<NameValuePair> params = new ArrayList<NameValuePair>();
params.add(new BasicNameValuePair("Name", "123"));
params.add(new BasicNameValuePair("Pass", "123"));
//要传递的参数.
String url = "http://www.----aspx?" + URLEncodedUtils.format(params, HTTP.UTF_8);
//拼接路径字符串将参数包含进去
json = get(url);
System.out.println(json.get("UserId"));
}
public static JSONObject get(String url) {
HttpClient client = new DefaultHttpClient();
HttpGet get = new HttpGet(url);
JSONObject json = null;
try {
HttpResponse res = client.execute(get);
if (res.getStatusLine().getStatusCode() == HttpStatus.SC_OK) {
HttpEntity entity = res.getEntity();
json = new JSONObject(new JSONTokener(new InputStreamReader(entity.getContent(), HTTP.UTF_8)));
}
} catch (Exception e) {
throw new RuntimeException(e);
} finally{
//关闭连接 ,释放资源
client.getConnectionManager().shutdown();
}
return json;
}
}
分享到:
相关推荐
NULL 博文链接:https://zhcheng.iteye.com/blog/1292350
利用c# httpclient ,post json数据到web api
NULL 博文链接:https://cxl2012.iteye.com/blog/2210521
利用HttpClient获取数据并用Gson解析Json数据,内容比较简单,适合新手
NULL 博文链接:https://javasam.iteye.com/blog/2117845
httpclient模拟post请求json封装表单数据的实现方法 httpclient模拟post请求json封装表单数据的实现方法
Android Studio使用HttpClient请求数据(get请求)不包括post请求
android httpclient 访问服务器 获取json数据,里面有需要载入的外部jar包,添加源代码后再加入外部包就可。
HttpClient模拟http发送post和get请求
该Demo主要介绍使用HttpClient获取网络数据,然后经过JSON后显示出来。另外本文章用到了常用的异步加载技术,AsyncTask类。
httpClient httpPost httpGet 所需jar包 httpClient httpPost httpGet 所需jar包
通过httpclient获取到JSON数据,展示到ListView通过httpclient获取到JSON数据,展示到ListView
通过httpclient获取到JSON数据展示到ListView.zip
现在C++也不行了吗,网上找不到相关代码。为了搞清楚C++中如何使用httpClient和Newtonsoft,研究了一下午。我从未用C++编程,一直用C#,现学现卖。
Angular中的数据请求 内置模块HttpClient实现(get post jsonp 以及第三方模板axios请求数据(32分12秒)
Android例子源码httpclient获取到JSON数据并展示到ListView
Android客户端向服务器端请求数据的两种主要方式:HTTPURLConnection、HTTPClient;内含客户端与服务器端Demo(带有详细注释),原生方式解析json数据,希望大家多多批评指教!!
HttpClient实现POST GET和文件下载 HttpClient实现POST GET和文件下载
httpClient获取json格式的数据,并将数据赋值与自动化测试平台