Volley请求显示com.android.volley.ServerError

时间:2017-09-06 09:38:22

标签: android android-volley

Volley请求显示com.android.volley.ServerError也需要实现getHeaders()方法吗?这种方法的确切用途是什么?

  send.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            JsonObjectRequest jsonObjectRequest = new JsonObjectRequest
                    (Request.Method.POST, URL, null, new Response.Listener<JSONObject>() {
                        @Override
                        public void onResponse(JSONObject response) {
                            Toast.makeText(getApplicationContext(),response.toString(),Toast.LENGTH_LONG).show();
                        }
                    }, new Response.ErrorListener() {
                        @Override
                        public void onErrorResponse(VolleyError error) {
                            error.printStackTrace();
                        }
                    }){
                @Override
                protected Map<String,String> getParams(){
                    Map<String,String> params = new HashMap<String, String>();
                    params.put("username","Admin");
                    params.put("password", "123456789");

                    return params;
                }
                @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");
                    return params;
                }
            };

            RequestQueue requestQueue = Volley.newRequestQueue(getApplicationContext());
            requestQueue.add(jsonObjectRequest);
        }
    });

1 个答案:

答案 0 :(得分:0)

通常,当您使用较差的互联网连接或服务器出现故障时会发生此类错误。无需实现getHeaders()方法。尝试检查您的连接或服务器连接。

使用android volley库,

 compile 'com.android.volley:volley:1.0.0'


        JsonObjectRequest jsonObjReq = new JsonObjectRequest(Method.POST,
            url, null,
            new Response.Listener<JSONObject>() {

                @Override
                public void onResponse(JSONObject response) {
                    Log.d(TAG, response.toString());
                    Toast.makeText(getApplicationContext(),response.toString(),Toast.LENGTH_LONG).show();
                }
            }, new Response.ErrorListener() {

                @Override
                public void onErrorResponse(VolleyError error) {
                    Log.d(TAG, "Error: " + error.getMessage());
                }
            }) {

        @Override
        protected Map<String, String> getParams() {
            Map<String, String> params = new HashMap<String, String>();
             params.put("username","Admin");
             params.put("password", "123456789");
            return params;
        }

    };

     RequestQueue requestQueue = Volley.newRequestQueue(getApplicationContext());
     requestQueue.add(jsonObjectRequest);

希望这会对你有帮助(Happy Coding!)。

相关问题