Fehlercodes in API Responses ausgeben
Bei der Umsetzung von 2FA stand ich vor dem Problem fehlgeschlagene Logins zu unterscheiden. Denn der Login kann wegen falscher Anmeldedaten oder fehlendem 2FA-Token fehlschlagen. In der Response war zwar eine 2FA-bezogene Fehlermeldung zu sehen, aber keine, die ich guten Gewissens maschinell auswerten würde. Als ich in den Code geschaut habe, habe ich gesehen, dass diese Fehlermeldungen mit einem code="..."
erzeugt wurden, die verwertbare Information an sich also durchaus vorhanden war. Das Problem war nur, dass diese Codes einem Objekt zugeordnet wurden, das von str
erbt (beim Schreiben hab ich gerade ein leichtes déjà vu, aber weiß nicht woher) und bei der Serialisierung auch als string ausgegeben wurden und code
quasi verworfen wird.
Ich habe das Problem funktionell in diesem Branch behoben. Allerdings schlagen die Tests fehl, weil die Tests ein Attribut code
wollen, jetzt aber ein dict mit einem Schlüssel code
vorliegt. Eventuell lässt sich mein Problem auch anders lösen, aber irgendeine Stelle muss wohl nochmal angepasst werden.