Melden Sie sich in einem Benutzer an, der AFNNetworking 2 (oder ein anderer Framework verwendet

StackOverflow https://stackoverflow.com//questions/23022910

  •  21-12-2019
  •  | 
  •  

Frage

Ich versuche, einen Code zu schreiben, um einen Benutzer ihren Benutzernamen und Ihr Kennwort einzugeben, und authentifizieren Sie sich mit einer grundlegenden HTTP-Authentifizierung gegen einen Server.Ich kann es mit afnetworking 2 tun, aber ich möchte zurückgeben, ob der Antrag erfolgreich war oder nicht.Der untenstehende Code funktioniert, aber wie kann ich es refaktieren, damit ich die Methode anrufen kann und dann einen Bool true oder false zurücksenden kann?Es fährt mich verrückt, dass ich das nicht tun kann.

generasacodicetagpre.

War es hilfreich?

Lösung

Da der Netzwerkaufruf asynchron ausgeführt wird, können Sie nicht einfach einen BOOL zurückgeben, da die Methode zurückgibt, sobald Sie generakodicetagcode anrufen, an welchen Punkt der Netzwerkanruf nicht abgeschlossen ist.Was Sie tun müssen, ist eine Blockparameter zu Ihrer Methode hinzuzufügen, mit der Sie in den Abschluss oder den Fehlerblock des generationstechnischenetagcodes aufgerufen werden, sodass Ihre Methodensignatur so aussehen wird:

generasacodicetagpre.

In dieser Methode fügen Sie Ihren Erfolgs- / Fehlerblöcken hinzu, um Ihren neuen Blockparameter aufzurufen.Wie so:

generasacodicetagpre.

und Ihr Aufruf dieser Methode sieht jetzt so aus:

generasacodicetagpre.

Dies ist im Allgemeinen, wie man mit dem Reaktion auf asynchrone Ereignisse reagiert, da Sie nichts zurückgeben können, das noch nicht entschlossen ist.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top