NSURLConnection
我想使用(和)向服务器发送大量数据NSURLRequest
。为此,我创建了一对绑定的NSStream
s(使用CFStreamCreateBoundPair(...)
)。然后我将输入流传递给NSURLRequest
( -setHTTPBodyStream:
) 并在当前运行循环中安排输出流。当运行循环继续时,我得到发送数据的事件,输入流将此数据发送到服务器。
我的问题是,这仅在数据适合成对流之间的缓冲区时才有效。如果数据更大,那么输入流会以某种方式获得一个事件(我假设“字节可用”),但 NSURLConnection 尚未打开输入流。这会导致打印一条错误消息,并且不会发送数据。
-stream:handleEvent:
如果输入流尚未打开,我试图通过简单地返回来在我的方法中捕获这一点,但随后我的输出流会收到一个流关闭事件(可能是因为我从来没有在我可以发送数据的时候发送数据)。
所以我的问题是:如何正确使用 NSURLConnection 的绑定流对?
(如果这很重要:我正在 iOS 平台上开发)
任何帮助表示赞赏!
干杯,马库斯