我一次解雇四个ASYNCHORONUS方法,我无法知道哪个方法超时。我想知道哪个方法超时.will server会给出关于哪个方法超时的任何id。
答案 0 :(得分:0)
选项1
将所有连接存储在呼叫者中。在didFailWithError:方法中,您可以进行比较以查找哪个连接失败。
选项2
使用关联的NSURLRequest来告诉什么连接做什么。
选项3
使用不同的代理来告诉另一个连接。与上面相同,但将每个连接与单个NSURLConnectionDelegate实例相关联。
<强>选项4 强>
从NSURLConnection派生自己的类。你可以在那里介绍ID或做其他奇特的事情 - 你掌控着。
示例强>
您创建NSURLRequest
并将其存储以供日后使用(选项2)。然后,您使用请求和委托创建连接:
[NSURLConnection connectionWithRequest:delegate:]
如果您在connection:didFailWithError:
中定义NSURLConnectionDelegate
方法,则会在超时时调用它。
- (void)connection:(NSURLConnection *)connection didFailWithError:(NSError *)error {
// The request has failed for some reason.
}
NSURLConnection允许您获得原始请求:
connection. originalRequest
您收到请求并将其与之前保存的请求进行比较。