android的volley学习

更简单的一种方式是在build.gradle中引入依赖【推荐这种方式】

compile 'com.android.volley:volley:1.1.1'

StringRequest的用法
接下来我们看看如何发起一条HTTP请求,然后接收HTTP响应。首先需要获取到一个RequestQueue对象,可以调用如下方法获取到:

RequestQueue mQueue = Volley.newRequestQueue(context);
首先创建一个StringRequest实例,构造函数中三个参数分别为:http请求方式:Get/Post,请求url,请求成功监听器(Response.Listener),请求错误监听器(Response.ErrorListener)。然后将request对象设置好Tag标记(方便以后针对性的取消请求),将request放入请求队列中

注意这里拿到的RequestQueue是一个请求队列对象,它可以缓存所有的HTTP请求,然后按照一定的算法并发地发出这些请求。RequestQueue内部的设计就是非常合适高并发的,因此我们不必为每一次HTTP请求都创建一个RequestQueue对象,这是非常浪费资源的,基本上在每一个需要和网络交互的Activity中创建一个RequestQueue对象就足够了

接下来为了要发出一条HTTP请求,我们还需要创建一个StringRequest对象,如下所示:

StringRequest stringRequest = new StringRequest("https://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);
}
});

可以看到,这里new出了一个StringRequest对象,StringRequest的构造函数需要传入三个参数,第一个参数就是目标服务器的URL地址,第二个参数是服务器响应成功的回调,第三个参数是服务器响应失败的回调。其中,目标服务器地址我们填写的是百度的首页,然后在响应成功的回调里打印出服务器返回的内容,在响应失败的回调里打印出失败的详细信息。

最后,将这个StringRequest对象添加到RequestQueue里面就可以了,如下所示:

mQueue.add(stringRequest);

AndroidManifest.xml中添加如下权限:

<uses-permission android:name="android.permission.INTERNET" />

原文链接:https://blog.csdn.net/u010356768/article/details/87720280

首先创建一个StringRequest实例,构造函数中三个参数分别为:http请求方式:Get/Post,请求url,请求成功监听器(Response.Listener),请求错误监听器(Response.ErrorListener)。然后将request对象设置好Tag标记(方便以后针对性的取消请求),将request放入请求队列中。

Get请求方式:

原文地址:https://www.cnblogs.com/dazhi151/p/12525313.html