如何在我需要在正文中发送身份验证标头和
JSON对象的排序中发出
JSON请求,我希望只有状态代码200回答
JsonObjectRequest request = new JsonObjectRequest( method,url,myJsonObject,responseListener,errorListener) { @Override public Map<String,String> getHeaders() throws AuthFailureError { HashMap<String,String> headers = new HashMap<String,String>(); String creds = String.format("%s:%s",login,password); String auth = "Basic " + Base64.encodeToString(creds.getBytes(),Base64.DEFAULT); headers.put("Authorization",auth); return headers; } }; new Response.Listener<String>(){ @Override public void onResponse(String response) { Toast.makeText(getActivity(),response,1000).show(); }
我尝试使用字符串或JSON对象,对象的不同种类的响应侦听器,但始终存在错误:
android volley org.json.JSONException:字符0的输入结束
或者是否有任何其他类型的请求在volley中支持和json对象和authentification标头在正文和响应只是一个http状态代码?
解决方法
我知道这是一个老问题,但我认为我仍然回答这个问题,因为我的答案可能会对未来的人有所帮助 –
您需要创建一个扩展Request类的自定义类,并在该类中覆盖这些方法
@Override protected Response parseNetworkResponse(NetworkResponse response) { return Response.success(response.statusCode,HttpHeaderParser.parseCacheHeaders(response)); } @Override protected void deliverResponse(Integer statusCode) { mListener.onResponse(statusCode); }
这是班上的核心和灵魂.
从Android Volley库获取服务器响应状态200
希望能帮助到你,谢谢