我从互联网上搜索了很多来设置凌空的请求超时。我最终得到了重试策略的解决方案,但当研究它不设置超时时,它会设置请求的重试时间,但我不想重试我的请求。我想增加凌空请求超时,以便较慢的网络可以访问数据,凌空超时设置为5秒,这意味着如果网络直到5秒才连接,它将抛出超时异常。我如何管理更改时间以从服务器获取响应。
我的代码是
ProjectHistory.requestQueue = Volley.newRequestQueue(mContext);
int socketTimeout = 30000;//30 seconds - change to what you want
RetryPolicy policy = new DefaultRetryPolicy(socketTimeout, DefaultRetryPolicy.DEFAULT_MAX_RETRIES, DefaultRetryPolicy.DEFAULT_BACKOFF_MULT);
stringRequest.setRetryPolicy(policy);
ProjectHistory.requestQueue.add(stringRequest);
我有两个问题--
(1) 它会在30秒后重试请求吗?
(2)如何设置请求超时30秒,以便较慢的网络可以加载数据?
请在凌空中检查此线程的超时策略。
这里在
request.setRetryPolicy(new DefaultRetryPolicy(DefaultRetryPolicy.DEFAULT_TIMEOUT_MS * 48,
0, DefaultRetryPolicy.DEFAULT_BACKOFF_MULT));
DefaultRetryPolicy。DEFAULT_TIMEOUT_MS*48,第一个参数本身表示超时。Volley将等待给定时间,并且id没有得到响应,如果策略中提到重试,请重试。
注意:这里提到的超时是2500ms*48 = 120000ms=2分钟
谢谢
我有一个凌空的JSONRequest,它被卡住了,因为来自服务器的响应不是有效的JSON(它是html)。 如何才能优雅地处理此错误?我有以下实现: 然而,当我发送请求并得到无效的JSON响应时,不会调用onErrorResponse。相反,我得到了一个例外 整个应用程序崩溃了。 我设法将该错误跟踪到JsonObjectRequest.java类中的以下行: 调用的行是:返回响应。错误(new P
我正在从服务器下载文件。我用排球来做。 这是我的代码 以下是错误侦听器的错误消息在一些弱网络连接上,我收到以下逻辑消息 我不明白失败的原因是什么,因为大多数错误消息都返回null。我很确定这是因为请求超时,我知道如何增加超时,但是我应该在错误侦听器中编写什么代码,以便在出现错误时获得正确的错误消息。
我们有一个长时间运行的请求,我们接收到,但我们没有设置响应超时,所以它应该无限期等待,对吗?我还检查了user.properties和httpclient.parameters文件,也没有看到其中设置的任何值。 JMeter版本5.3
我是SpringBoot的新手,正在寻找一种在endpoint超过3秒才能返回响应时超时的方法。我尝试添加属性“server.servlet.session.timeout”,但仍然没有运气。如何做到这一点?谢谢。 Application.properties
我想在应用程序启动时加载一些数据,这些数据将被所有活动使用。我在应用程序的onCreate方法中这样做,因为我希望在显示任何活动之前下载这些数据,所以我尝试使用RequestFuture发出同步请求。但是,始终会抛出TimeoutException。 什么是获得应用程序范围的数据的最佳方式,记住没有一个活动是首先启动的?
我有一个用Java编写的Spring Boot应用程序,它是一个REST API。该服务(Svc A)调用REST API服务(Svc B),该服务也是用Java编写的Spring Boot应用程序。当没有找到数据时,Svc B返回404状态码。我需要将此响应更改为200状态代码,并返回一个空响应对象。我不确定是否或如何做到这一点。 我可以捕捉错误,并确定404是否是这个没有数据发现的错误。但是,