Kann AFNetworking handle einer Warteschlange von Anfragen?
Meinem Beispiel auf iOS 6:
- 10 Multi-Teil-Anfragen gesendet werden müssen (in der Reihenfolge) an den server.
(so die Formulare zur Anforderung einer Warteschlange) - Fortschritt angezeigt werden soll.
- wenn eine Anfrage nicht alles folgende sollte fehlschlagen
- eine Anfrage-Warteschlange kündbar
AFNetworking kann mir dabei helfen? Oder sollte ich versuchen etwas zu bauen, mit NSOperations und führen Sie die Schleifen mich?
Wenn ich übergeben zu müssen, Kontext, Daten zwischen Thesen fordert beispielsweise eine Transaktions-id, erzeugt durch die erste Anfrage. Gibt es irgendwelche überlegungen, um die thread-Sicht, die ich beachten muss?
Du musst angemeldet sein, um einen Kommentar abzugeben.
AFNetworking kann dies tun. Ich empfehle, dass Sie verwenden AFHTTPRequestOperationManager (die selbst verwendet NSOperation), anstatt AFHTTPSessionManager. Es gibt Möglichkeiten, es zu tun mit AFHTTPSessionManager, aber keine so elegant wie mit Operationen.
Unter der Haube, hier ist was Sie tun würde, ohne den manager:
Verwenden Sie einen Antrag serializer, um Ihren NSMutableURLRequest (zum Beispiel
[AFHTTPRequestSerializer -multipartFormRequestWithMethod:URLString:parameters:constructingBodyWithBlock:error:]
; es gibt eine ähnliche JSON-request-serializer zu).Sobald Sie eine URL-Anfrage, machen den Betrieb mit
[AFHTTPRequestOperation -initWithRequest:]
. Sie sollten auch festlegen, Fertigstellung blockiert.Schließlich, fügen Sie Ihren Betrieb
[AFHTTPRequestOperationManager manager].operationQueue
undstart
es.Nun, dass Sie verstehen, wie dies im Grunde arbeiten alle zusammen, hier ist ein einfacher Ansatz:
AFHTTPRequestOperationManager
Optional Einstellung derrequestSerializer
wenn Sie nicht wie die Standard --POST:parameters:constructingBodyWithBlock:success:failure:]
- was Sie tun möchten, ist NICHTstart
Ihren Betrieb richtigen Weg.start
die erste