objective-c - 使用 NSURLConnection 串行发出异步请求

标签 objective-c ios cocoa-touch asynchronous nsurlconnection

我正在编写一个与 RESTful Web 服务交互的 iPhone 应用程序,我需要请求一个身份验证 token 以用于以后的所有请求。我希望尽可能避免多线程,而是使用异步 NSURLConnection 方法来确保主线程不会阻塞(从而确保用户界面保持响应)。

我遇到的问题是,我无法弄清楚如何让后面的请求等待获取 token ,而不使 token 获取成为同步请求并阻塞主线程。

我突然想到,我可以在一个循环中使用 token 获取完成时设置的信号量值,但这似乎很笨拙并且是错误的方法。有没有公​​认的正确方法?

最佳答案

如果您正在针对 iOS 5.0 或更高版本进行构建,则可以使用:

+[NSURLConnection sendAsynchronousRequest:queue:completionHandler:]

completionHandler: block 中进行后续调用。

关于objective-c - 使用 NSURLConnection 串行发出异步请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8882160/

相关文章:

ios - 根据文本字段中的日期创建事件

objective-c - 警告 "Use of GNU statement expression extension"

php - 从 Web 开发学习 Objective C (Cocoa) 进行 iPhone 编程?

iphone - 删除我的应用程序时调用状态更改网络服务

ios - NSPredicate 搜索逗号分隔值与数组

ios - 等待一定时间后向用户发送通知

ios - 如何将图片分配给 UIImageView (Swift 3)

ios - 从 Air for iOs 应用程序发送到第二个应用程序的链接

iphone - 如何使用 NSFileManager 删除目录及其内容

iphone - UITableView 附件上的图标可以替换吗?