Android Volley有时会导致两次POST

问题描述 投票:1回答:1

我在慢速网络上对Volley POST请求有问题。有时,我的POST请求执行两次或多次,导致1个请求进行多次(2次或多次)发布。

我尝试了几种解决方案,但没有用,

尝试1:

request.retryPolicy = DefaultRetryPolicy(30000, 0, 1f)

尝试2:

request.retryPolicy = DefaultRetryPolicy(0, -1, DefaultRetryPolicy.DEFAULT_BACKOFF_MULT)

尝试3:增加setRetryPolicy时间。

request.setRetryPolicy(new DefaultRetryPolicy(
                    30000,
                    DefaultRetryPolicy.DEFAULT_MAX_RETRIES,
                    DefaultRetryPolicy.DEFAULT_BACKOFF_MULT));

尝试4:将RetryPolicy设置为0重试,并确保超时大于服务器超时。

setRetryPolicy(new DefaultRetryPolicy("bigger than server timeout",
                                      0,
                                    DefaultRetryPolicy.DEFAULT_BACKOFF_MULT));

尝试5:更改RetryPolicy。我将超时值设置为50000ms

request.setRetryPolicy(
                new DefaultRetryPolicy(
                        500000,
                        DefaultRetryPolicy.DEFAULT_MAX_RETRIES,
                        DefaultRetryPolicy.DEFAULT_BACKOFF_MULT
                )
        );

完整源代码:https://androidkeynotes.blogspot.com/2020/02/volley.html

如何避免使用排球库重复POST?

android kotlin android-volley
1个回答
0
投票

Volly具有在定义时间内未检索到响应的情况下调用API 3时间的机制。我们可以更改持续时间,以便在连接速度较慢时得到响应。

© www.soinside.com 2019 - 2024. All rights reserved.