jQuery Ajax 超时时间最佳实践值

4

我在谷歌上搜索了一下,想知道关于Jquery Ajax调用的最佳实践中是否有任何推荐的最小/最大超时设置。

场景:

ASP.NET MVC Web应用程序使用第三方WCF Relay服务。一旦检索到数据,该Web应用程序具有自己的业务规则,一旦处理完毕,控制器/操作将其公开。

请问有人能分享以下内容吗?

  1. 推荐的超时时间是多少,例如5秒、10秒、1分钟等?
  2. 如果我们为超时指定了更大的值,会有什么后果?会有阻塞线程吗?
  3. 如果我们不指定超时,即使用盒子的话,会有什么问题吗?

谢谢。


  1. 取决于传输的数据量和处理速度。通常15秒就足够了。
  2. 只要是异步的,它就不会阻塞任何东西,但可能会使用更多的服务器资源。
  3. 超时默认为60秒,尽管它可能取决于浏览器的网络连接超时。
- Rory McCrossan
  1. 无论你喜欢什么,通常只需要30秒。
  2. 即使您设置了更长的超时时间,Ajax也不会阻塞线程。
  3. 如果您没有设置它,jQuery至少会为您设置30秒,没有问题。
- adeneo
基本上我们的网络应用程序依赖于外部网络服务,同时我们还有一些业务规则需要处理。 - Nil Pun
1个回答

1
一个标准值是十秒钟,虽然正如其他人上面提到的,二进制流可能需要更长时间。也许可以将你的XHR包装在一个构造函数中,该构造函数采用一个参数。
this.timeout = timeout || 10000

使用这种方式可以避免重写样板代码,而可以将其提升到预计需要更长时间的路由。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接