2012-06-15 91 views
3

我可以在我的应用程序中使用的最大超时时间间隔是多少?我使用以下方法。NSMutableRequest&NSURLConnection的最大超时时间

(id)initWithURL:(NSURL *)URL cachePolicy:(NSURLRequestCachePolicy)cachePolicy timeoutInterval:(NSTimeInterval)timeoutInterval; 

我使用GET方法。

由于

+0

我不确定是否有最大值。只需尝试9999999,并且一步一步地回应网址,然后检查是否存在最大值... – Martin

+0

为什么您需要非常大的超时时间,只需使用300 –

回答

3

NSTimeInterval数据类型是的typedef 数据类型的,所以所支持的最大超时值是对于数据类型最大的值。

0

我认为你应该考虑到HTTP使用TCP。 TCP连接不仅受您的应用程序控制,您的应用程序和服务器之间还有许多路由器和防火墙。

为了查看TCP连接的默认超时值,我查看了一个典型的防火墙文档。

对于CISCO它是一个小时。

http://www.cisco.com/c/en/us/td/docs/security/asa/asa91/configuration/firewall/asa_91_firewall_config/conns_connlimits.html#42354

因此,也许在最大的连接超时决定时应该考虑这些信息。

另请参阅第5.5节:https://tools.ietf.org/html/rfc6202 他们声称最佳做法是30秒。