Volley(1)—发送get和post请求

来源:互联网 发布:法律大数据 编辑:程序博客网 时间:2024/06/07 13:24

适合数据量小,交互频繁的网络操作情况下。
不适合大数据量的网络操作,比如下载文件,或者大的视频等。
功能有:
1.JSON,图像等的异步下载
2.网络请求的排序
3.网络请求的优先级处理
4.缓存
5.多级别取消请求
6.和Activity生命周期联动
RequestQuery请求消息队列,它可以缓存所有的http请求。他是并发处理的

public class MainActivity extends Activity {    RequestQueue queue=null;    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        //創建一個請求隊列    queue= Volley.newRequestQueue(getApplication());    }    //发送一个字符串的请求    private void sendStringRequest(){//按钮的监听事件        String url="http://www.baidu.com";        //创建一个字符串请求(请求方式,url,正确的回调接口,错误的回调接口)        StringRequest request=new StringRequest(Request.Method.GET, url, new Listener<String>() {            @Override            public void onResponse(String arg0) {                // 正确的时候                System.out.println(arg0);            }        },  new ErrorListener(){            @Override            public void onErrorResponse(VolleyError arg0) {                // 错误的时候                System.out.println(arg0);            }        }        );            queue.add(request);//把消息加到队列里    }           //发送post请求    private void sendPostRequest(){        String url="***";//地址        StringRequest request=new StringRequest(Request.Method.POST, url, new Listener<String>() {            @Override            public void onResponse(String arg0) {            }         },new ErrorListener() {            @Override            public void onErrorResponse(VolleyError arg0) {                // TODO Auto-generated method stub            }        }){@Override        protected Map<String, String> getParams() throws AuthFailureError {            Map<String, String> params=new HashMap<String, String>();            params.put("name", "word");            return params;        }};        queue.add(request);//把消息加到队列里    }}
0 0