1,添加依赖
compile 'com.android.volley:volley:1.0.0'
2,Volley post请求
-
接口文档
-
Volley内部没有提供设置请求参数,需要我们自定义进行封装
public class PostRequest extends StringRequest
public PostRequest(String url, Response.Listener<String> listener, Response.ErrorListener errorListener) {
super(Method.POST,url, listener, errorListener);
}
HashMap<String,String> map = new HashMap<>();
@Override
protected Map<String, String> getParams() throws AuthFailureError {
return map;
}
/**
* 添加请求体参数
* @param key
* @param value
*/
public void addPostParams(String key,String value){
map.put(key,value);
}
post请求
private void volleyPost() {
//1.创建请求队列
RequestQueue requestQueue = Volley.newRequestQueue(this);
//2.创建请求对象
PostRequest request = new PostRequest(Api.LOGIN, new Response.Listener<String>() {
@Override
public void onResponse(String response) {
tvResult.setText(response);
}
},errListener);
//设置请求体参数
request.addPostParams("username","The Monkey King!");
request.addPostParams("password","golden cudgel!");
//3.执行请求
requestQueue.add(request);
}
//失败回调
Response.ErrorListener errListener = new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
tvResult.setText(error.getMessage());
}
};