Volley post方法返回响应代码500

时间:2015-06-24 09:42:51

标签: android web-services android-volley

使用volley时,我总是得到低于错误的响应

06-24 15:06:59.244: E/Volley(12869): [2311] BasicNetwork.performRequest: Unexpected response code 500 for http://My_API

我的Volley电话代码

String sSignupUrl = STController.getInstance()
                .getResourceManager(LoginActivity.this)
                .getServerPropertyValue(URLConstants.API_LOGIN);
JSONObject params = new JSONObject();
        try {
            params.put("username", "usernam");
            params.put("passwd", "password");
        } catch (JSONException e) {
            e.printStackTrace();
        }
        JsonObjectRequest jsonObjReq = new JsonObjectRequest(Method.POST,
                sSignupUrl, params, new Response.Listener<JSONObject>() {

                    @Override
                    public void onResponse(JSONObject response) {
                        LogUtil.d("TAG" + response.toString());
                    }
                }, new Response.ErrorListener() {

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

            @Override
            public Map<String, String> getHeaders() throws AuthFailureError {
                HashMap<String, String> headers = new HashMap<String, String>();
                headers.put("Content-Type", "application/json; charset=utf-8");
                return headers;
            }

        };

        // Adding request to request queue
        AppController.getInstance().addToRequestQueue(jsonObjReq);

我可以在使用URLConnection管理器时成功获得响应,无法找到错误,我通过谷歌搜索但dint得到正确的解决方案,所有答案都是最受欢迎的 提前致谢

1 个答案:

答案 0 :(得分:2)

我确实有同样的情况。我做错了的是我将getHeaders()包含在错误的JsonObjectRequest(i.e. with a wrong url)中。但我在我的情况下使用了自定义标题。检查你的网址。它可能不是正确的。它可能不接受此标头。