Session 超时和Request 超时

1,242 阅读1分钟

在使用AFNetworking的过程中,发现NSURLSessionConfiguration中有两个关于超时操作的属性timeoutIntervalForRequesttimeoutIntervalForResource。而在AFURLRequestSerialization当中有一个timeoutInterval的属性。一下子有点懵逼。

根据What is the difference between a session timeout and a connection timeout in IIS?这篇文章看到的:

Session超时,指的是当前session的生存周期长度。Session的时间单位是min,且可跨越多个连接。

Connection超时的话,指的是连接发送到服务器获取到响应的时长。通常是以秒为单位。

回到AFNetworking中:

timeoutIntervalForRequest指的是在给定的时间内,没有数据进行传输。当数据进行传输时会自动reset

timeoutIntervalForResponse指在给定的时间内没有获取到服务器的响应

timeoutInterval指的是当前连接的超时时间

所以需要设置AFNetworking的超时处理的话,设置的是timeoutInterval