Volley相关API
1.RequestQueue:请求队列,会自动执行队列中的请求
Volley.newRequestQueue(context):创建一个请求队列
addRequest(Request request):将请求添加到请求队列
2.Request<T>:代表请求的接口
StringRequest:获取字符串结果的请求
JsonRequest:获取Json数据结果的请求
ImageRequest:获取图片结果的请求
步骤:
1.获取请求队列
2.创建请求对象
3.将请求添加到队列中
在此过程不需要请求分线程,Volly需要导入jar包
get方式发送请求
private RequestQueue queue= Volley.newRequestQueue(this);
final ProgressDialog dialog = ProgressDialog.show(netActivity.this, null, "正在加载中....");
String path = et_net_url.getText().toString()+"?name=Tom&age=12";
StringRequest request = new StringRequest(path, new Response.Listener<String>() {
@Override
public void onResponse(String s) {//在主线程执行
et_net_show.setText(s);
dialog.dismiss();
}
},null);
queue.add(request);
post方式发送请求较为麻烦
final ProgressDialog dialog = ProgressDialog.show(netActivity.this, "正在加载中...", null);
//创建请求对象StringRequest
String path = et_net_url.getText().toString();
StringRequest request = new StringRequest(1,path, new Response.Listener<String>() {
@Override
public void onResponse(String s) {
et_net_show.setText(s);
dialog.dismiss();
}
},null){
//重写此方法返回参数的map作为请求体
@Override
protected Map<String, String> getParams() throws AuthFailureError {
Map<String,String> map = new HashMap<String, String>();
map.put("name","TOM");
map.put("age","20");
return map;
}
};
//将请求添加到队列中
queue.add(request);