gpt4 book ai didi

ios - NSURLConnectionDataDelegate 函数顺序

转载 作者:行者123 更新时间:2023-11-28 18:36:40 25 4
gpt4 key购买 nike

在 NSURLConnectionDataDelegate 中有几个函数对于确保一切正常运行非常重要,但我永远不确定什么时候会发生什么。

函数...

- (void)connection:(NSURLConnection *)connection didReceiveResponse:(NSURLResponse *)response;
- (void)connection:(NSURLConnection *)connection didReceiveData:(NSData *)data;
- (void)connectionDidFinishLoading:(NSURLConnection *)connection;

和其他几个。

它们总是按照我设定的顺序发生吗?即响应是您得到的第一件事,还是它可以在连接生命周期中的任何时候发生?

最佳答案

-connection:didReceiveResponse: 将被调用 0 次或多次。如果出现错误,将调用 -connection:didFailWithError:。如果您收到多部分 MIME 消息,则可能会多次调用此方法,一旦有足够的日期创建响应对象,并且在调用 -connection:didReceiveData: 之前,就会调用此方法。

-connection:didReceiveData: 将被调用 0 次或多次。如果主体超过 0 字节,则在调用 -connection:didFinishLoading: 之前至少调用一次此方法。此方法永远不会在 -connection:didReceiveResponse: 之前或 -connection:didFinishLoading:-connection:didFailWithError: 之后调用。

-connection:didFinishLoading: 只被调用一次并且是最后调用的。此方法返回后的某个时间,连接将被释放。如果调用了 -connection:didFailWithError:,则不会调用此方法,并且始终是最后调用的方法。

关于何时调用这些方法以及头文件中存在的顺序的文档,但我还没有看到它在实际文档中写得非常简洁。

关于ios - NSURLConnectionDataDelegate 函数顺序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17564435/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com