我正在开发一个 iPhone 应用程序,它将使用长轮询通过 HTTP 将事件通知从服务器发送到客户端。在服务器上打开连接后,我将发送一小段表示事件的 JSON,因为它们发生了。我发现-[NSURLConnectionDelegate connection:didReceiveData]
直到我关闭连接后才会调用它,无论我在创建NSURLRequest
. 我已经验证服务器端正在按预期工作 - 第一个 JSON 事件将立即发送,后续事件将在发生时通过线路发送。有没有办法在NSURLConnection
这些事件发生时接收它们,还是我需要改为下拉到 CFSocket API?
我开始着手集成 CocoaAsyncSocket,但NSURLConnection
如果可能的话,我更愿意继续使用,因为它更适合我基于 REST/JSON 的 Web 服务结构的其余部分。