Volley String Request在android中没有给出响应

我使用Volley String请求Post方法..但它没有给出正确的响应..当我使用JsonObject请求时它会给我正确的响应..我很困惑,我不明白字符串请求有什么问题..请任何人都可以帮我提供字符串请求…这是我的代码..

StringRequest requestQueue =Volley.newRequestQueue(MainActivity.this); String URL ="http://demoangularaims.azurewebsites.net/api/v1/API_NI_ACD_FILL_COMMON_DDL_SP"; Log.d(TAG, " url=" + URL); StringRequest stringRequest = new StringRequest(Request.Method.POST, URL, new Response.Listener() { @Override public void onResponse(String response) { Log.d(TAG, " response=" + response); } }, new Response.ErrorListener() { @Override public void onErrorResponse(VolleyError error) { Log.d(TAG, " error=" + error); } }) { @Override protected Map getParams() throws AuthFailureError { LinkedHashMap linkmap = new LinkedHashMap(); linkmap.put("p_ENTITY_ID", "2"); linkmap.put("p_ORGCD", "p01"); linkmap.put("p_COMPCD", "A0002"); linkmap.put("p_DIVCD", ""); linkmap.put("p_USERID", ""); linkmap.put("p_ACDYR", ""); linkmap.put("p_TYPE", "ACDYR_DDL"); linkmap.put("p_FILTER1", ""); linkmap.put("p_FILTER2", ""); linkmap.put("p_DEFUNCT", ""); Log.d(TAG, " MAP=" + linkmap); return linkmap; } @Override public Map getHeaders() throws AuthFailureError { LinkedHashMap headers = new LinkedHashMap(); return headers; } }; requestQueue.add(stringRequest); } PostMan OutPut- 

在此处输入图像描述

使用getBody而不是getParams它将起作用。 由于您使用的是POST方法,因此您应该添加Request body。

  @Override public byte[] getBody() throws AuthFailureError { try { return stringRequestBody.getBytes("utf-8"); //String Request Body with Encoded } catch (UnsupportedEncodingException uee) { return null; } } 

试试这个

JsonObjectRequest

 RequestQueue requestQueue = Volley.newRequestQueue(MainActivity.this); String URL = "http://demoangularaims.azurewebsites.net/api/v1/API_NI_ACD_FILL_COMMON_DDL_SP"; JsonObjectRequest jsonObjReq = new JsonObjectRequest(Request.Method.POST, URL, null, new Response.Listener() { @Override public void onResponse(JSONObject response) { Log.d("TAG", "JSONObj response=" + response); } }, new Response.ErrorListener() { @Override public void onErrorResponse(VolleyError error) { VolleyLog.d("TAG", "JSONObj Error: " + error.getMessage()); //Toast.makeText(getApplicationContext(), error.getMessage(), Toast.LENGTH_SHORT).show(); // hide the progress dialog } }); requestQueue.add(jsonObjReq); 

Jsonobject请求输出

 D/TAG: JSONObj response={"recordsets":[],"output":{},"rowsAffected":[],"returnValue":0} 

字符串请求

 RequestQueue requestQueue = Volley.newRequestQueue(MainActivity.this); String URL = "http://demoangularaims.azurewebsites.net/api/v1/API_NI_ACD_FILL_COMMON_DDL_SP"; StringRequest stringRequest = new StringRequest(Request.Method.POST, URL, new Response.Listener() { @Override public void onResponse(String response) { Log.d("TAG", "String response=" + response); } }, new Response.ErrorListener() { @Override public void onErrorResponse(VolleyError error) { Log.d("TAG", "String error=" + error); } }); requestQueue.add(stringRequest); 

字符串请求输出

 D/TAG: String response={"recordsets":[],"output":{},"rowsAffected":[],"returnValue":0} 

邮递员输出

在此处输入图像描述