当前位置:  开发笔记 > 编程语言 > 正文

NSURLConnection和处理响应代码和响应数据

如何解决《NSURLConnection和处理响应代码和响应数据》经验,为你挑选了1个好方法。

我现在有一个奇怪的边缘案例,来自NSURLConnection委托方法的响应代码:

- (void)connection:(NSURLConnection *)connection didReceiveResponse:(NSURLResponse *)response;

在后续委托方法之前触发:

- (void)connection:(NSURLConnection *)connection didReceiveData:(NSData *)data;

我的代码当然可以使用改进,因为它现在检查上面的HTTP响应代码,然后调用某些方法来采取行动.不幸的是,那时数据尚未公布.

什么是一些优雅的解决方案,用于耦合responseresponseData我的类方法直到response responseData 200 +没有触发的方式nil.我是否需要将它们都设置为类实例变量?看起来像一个穷人的解决方案.



1> Matt Gallagh..:

数据之前的响应是正确的顺序.实际上,您应该清除此方法中的任何数据(如果您通过重定向收到多个响应,并且任何干预数据已过时).

您收到一个连接:didReceiveResponse:消息,告诉您已收到回复标题,但这发生任何正文内容之前.

如果您需要访问回复的所有元素,您应该只是存储响应和数据,并且只在connectionDidFinishLoading中处理它们:(或者如果您的数据很长,您可以在连接中逐步处理:didReceiveData :).

推荐阅读
N个小灰流_701
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有