排球请求两次返回数据

时间:2019-06-01 17:00:28

标签: java android android-volley

请不要将我的问题标记为重复,因为我已经尝试了所有可以找到的解决方案。

顾名思义,我的截击请求返回了两次数据,我尝试了所有可以找到的解决方案,包括thisthis

这是我的代码,以防万一我做错了其他事情。

JsonArrayRequest jsonArrayRequest = new JsonArrayRequest(
                Request.Method.GET,
                url,
                null,
                new Response.Listener<JSONArray>() {
                    @Override
                    public void onResponse(JSONArray response) {
                        dataCallback.onSuccess(response);
                    }
                },
                new Response.ErrorListener() {
                    @Override
                    public void onErrorResponse(VolleyError error) {
                        dataCallback.onError(error);
                    }
                }
        ) {
            @Override
            public Map<String, String> getHeaders() {

                Map<String, String> headers = new HashMap<>();
                headers.put("Content-Type", "application/json");
                headers.put("Authorization", "Bearer " + access_token);
                headers.put("trakt-api-version", "2");
                headers.put("trakt-api-key", client_id);
                return headers;
            }
        };
        jsonArrayRequest.setRetryPolicy(new DefaultRetryPolicy(
                0, DefaultRetryPolicy.DEFAULT_MAX_RETRIES, DefaultRetryPolicy.DEFAULT_BACKOFF_MULT));
        AppController.getInstance().addToRequestQueue(jsonArrayRequest);
    } catch (Exception e) {
        e.printStackTrace();
    }

1 个答案:

答案 0 :(得分:0)

您在代码中实现了重试策略,可以给您两次响应

 //try after comment or remove below line
  jsonArrayRequest.setRetryPolicy(new DefaultRetryPolicy(
            0, DefaultRetryPolicy.DEFAULT_MAX_RETRIES, DefaultRetryPolicy.DEFAULT_BACKOFF_MULT));