AFNetworking: Fehler global behandeln und Anforderung wiederholen
Ich habe einen Anwendungsfall, der eher verbreitet sein sollte, aber ich kann mit AFNetworking keinen einfachen Weg finden, damit umzugehen:
Immer wenn der Server einen bestimmten Statuscode für zurückgibtirgendein Anfrage, ich möchte:
Entfernen Sie ein zwischengespeichertes Authentifizierungstokenerneut authentifizieren (dies ist eine separate Anfrage)Wiederholen Sie die fehlgeschlagene Anforderung.Ich dachte, dass dies über eine globale Vervollständigung / Fehlerbehandlung in erfolgen könnteAFHTTPClient
, aber ich fand nichts brauchbares. Also, was ist der "richtige" Weg, um das zu tun, was ich will? ÜberschreibenenqueueHTTPRequestOperation:
in meinemAFHTTPClient
Unterklasse, kopieren Sie die Operation und schließen Sie den ursprünglichen Beendigungs-Handler mit einem Block ein, der das tut, was ich will (erneute Authentifizierung, Kopieroperation in die Warteschlange stellen)? Oder bin ich überhaupt auf dem falschen Weg?
Vielen Dank!
BEARBEITEN: Der Verweis auf den 401-Statuscode wurde entfernt, da dieser wahrscheinlich für HTTP Basic reserviert ist, während ich die Token-Authentifizierung verwende.