Ich arbeite an einer iPhone-Anwendung, die Long-Polling verwenden wird, um Ereignisbenachrichtigungen vom Server an den Client über HTTP zu senden. Nachdem ich eine Verbindung auf dem Server geöffnet habe, sende ich kleine JSON-Bits, die Ereignisse darstellen, sobald sie auftreten. Ich stelle fest, dass -[NSURLConnectionDelegate connection:didReceiveData]
wird erst aufgerufen, nachdem ich die Verbindung geschlossen habe, unabhängig von den Cache-Einstellungen, die ich beim Erstellen der NSURLRequest
. Ich habe überprüft, dass das Serverende wie erwartet funktioniert - das erste JSON-Ereignis wird sofort gesendet, und nachfolgende Ereignisse werden über die Leitung gesendet, wenn sie auftreten. Gibt es eine Möglichkeit zu verwenden NSURLConnection
um diese Ereignisse zu empfangen, wenn sie auftreten, oder muss ich stattdessen auf die CFSocket-API zurückgreifen?
Ich fange an, an der Integration von CocoaAsyncSocket zu arbeiten, würde es aber vorziehen, weiterhin mit NSURLConnection
wenn möglich, da es viel besser zum Rest meiner REST/JSON-basierten Webdienststruktur passt.
0 Stimmen
Hey, ich habe gesehen, dass Sie asyncsocket verwendet, um das gewünschte Ergebnis zu erhalten. Jede Chance, ich könnte Ihr Gehirn über diese irgendwann holen? Ich bin @suprfrends auf Twitter. Es würde sehr geschätzt werden!
0 Stimmen
Ich konnte dies herausfinden .... check out: stackoverflow.com/questions/1293026/
0 Stimmen
Ich habe eine Lösung für dieses Problem gefunden, siehe meine Antwort hier: stackoverflow.com/questions/1293026/
0 Stimmen
Hier ist eine Lösung, die ich nach vielen Mühen gefunden habe :) stackoverflow.com/questions/1293026/