使用volley来json解析
我对网络请求get和post的理解:
1、get只是从某网址获得固定数据,如我访问百度,返回就是百度的html语句;
2、post是我在访问的时候加了某些参数,如我访问某个服务器,访问的时候加了一些语句,比如只想的到其中的图片,
此时服务器就返回我需要的数据,而不是整个内容。
总结:第一种常用来玩玩,如笑话,天气预报那些简单应用;第二种一般公司都用,通过自己的服务器,来得到数据
使用get Volley:
1. 创建一个RequestQueue对象。
RequestQueue mQueue = Volley.newRequestQueue(context);
2. 创建一个StringRequest对象。
StringRequest stringRequest = new StringRequest("http://www.baidu.com",
new Response.Listener<String>() {
@Override public void onResponse(String response) {
Log.d("TAG", response);
}
},
new Response.ErrorListener() {
@Override public void onErrorResponse(VolleyError error) {
Log.e("TAG", error.getMessage(), error);
}
}
});
3. 将StringRequest对象添加到RequestQueue里面。
mQueue .add(stringRequest);
这里new出了一个StringRequest对象,StringRequest的构造函数需要传入三个参数,第一个参数就是目标服务器的URL地址,第二个参数
是服务器响应成功的回调,第三个参数是服务器响应失败的回调。其中,目标服务器地址我们填写的是百度的首页,然后在响应成功的回调里打
印出服务器返回的内容,在响应失败的回调里打印出失败的详细信息。
使用post Volley(json):
1. 创建一个RequestQueue对象。
RequestQueue mQueue = Volley.newRequestQueue(context);
2. 创建一个JSONObject对象。
JSONObject js = new JSONObject();//具体怎么通过String变为json对象看另一篇博客
3. new一个JsonObjectRequest对象,并将JSONObject对象添加到JsonObjectRequest 里面
JsonObjectRequest jsonObjectRequest = new JsonObjectRequest(Request.Method.POST, url,JSONObject js,new Listener,new ErrorListener);
4、将StringRequest对象添加到RequestQueue里面。
mQueue .add(stringRequest);
注意:JsonObjectRequest的成功返回回调和错误返回回调一定要写,不能为空,否则程序报错
长风破浪会有时,直挂云帆济沧海!
可通过下方链接找到博主
https://www.cnblogs.com/judes/p/10875138.html