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 one rrorResponse(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请求方式:
标签:HTTP,请求,StringRequest,RequestQueue,学习,监听器,volley,android,Response 来源: https://www.cnblogs.com/dazhi151/p/12525313.html