如何使用Volley

时间:2019-01-22 14:31:33

标签: android json android-volley jsonobjectrequest

我将使用Volley Library将JsonObjectRequest作为表单数据发送到服务器。我检查了类似的问题。他们没有一个解决我的问题。

这是我需要的确切请求的邮递员ScreenShot:

Postman

这是名为myKey的我的JSONObject,其中包含一个JSONArray:

{
 "myArray":[
    {
    "code":"FA95",
    "id":"94"
    }
 ]
}

这是我的请求方法:

public static void getSomething(String url) {

    JsonObjectRequest request = new JsonObjectRequest(Request.Method.POST, url, null, new Response.Listener<JSONObject>() {
        @Override
        public void onResponse(JSONObject response) {

        }
    }, new Response.ErrorListener() {
        @Override
        public void onErrorResponse(VolleyError error) {

        }
    }) {
        @Override
        public byte[] getBody() {
            return super.getBody();
        }
    };

    request.setRetryPolicy(new DefaultRetryPolicy(DefaultRetryPolicy.DEFAULT_TIMEOUT_MS, DefaultRetryPolicy.DEFAULT_MAX_RETRIES, DefaultRetryPolicy.DEFAULT_BACKOFF_MULT));
    AppController.getInstance().addToRequestQueue(request);
}

是否应该覆盖getBody()?它应该返回什么?

1 个答案:

答案 0 :(得分:1)

答案是:https://stackoverflow.com/a/39718240/3024933

您需要覆盖getParams()方法,并使用StringRequest代替JsonObjectRequest