我有一个Api可以很好地处理邮递员,但是在我的代码中使用改造后效果不佳。当我没有在体内传递参数时,身份验证工作正常,否则,我将收到错误401
我以前使用过改装,出现同样的错误,然后我改用齐射,但错误仍然存在。但是当我与邮递员测试时,它可以正常工作。 注意:对于没有任何body参数的调用,TOKEN与API配合良好
StringRequest request = new StringRequest(
Request.Method.POST,Config.API_URL_DetaILS,new Response.Listener<String>() {
@Override
public void onResponse(String response) {
if (!response.equals(null)) {
Log.i("tag","lii"+response);
} else {
Log.i("tag","lii Data Null");
}
}
},new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
Log.e("error is ","" + error);
error.printStackTrace();
}
}) {
//This is for Headers If You Needed
@Override
public Map<String,String> getHeaders() throws AuthFailureError {
Map<String,String> params = new HashMap<String,String>();
params.put("Content-Type","application/x-www-form-urlencoded");
params.put("Authorization",TOKEN);
params.put("accept","application/json");
return params;
}
@Override
public String getBodyContentType() {
return "application/x-www-form-urlencoded; charset=UTF-8";
}
//Pass Your Parameters here
@Override
protected Map<String,String> getParams() {
Map<String,String>();
params.put("event_id","30");
params.put("longitude",String.valueOf(3.4));
params.put("latitude",String.valueOf(6.6063));
return params;
}
};
RequestQueue queue = Volley.newRequestQueue(getapplicationContext());
queue.add(request);
我希望输出是api响应,但输出是响应代码401。com.android.volley.AuthFailureError。