3 votes

Application Python Flask - erreur TOTP avec zéros en tête. (Python 2.7)

J'ai écrit une application python flask dans laquelle l'application génère un totp pour validation. (Python 2.7)

J'utilise la bibliothèque onetimepass pour valider totp par rapport au secret de l'application. code :

    json_data=request.get_json()
    my_token=json_data['OTP']
    is_valid = otp.valid_totp(token=my_token, secret=my_secret)

Cependant, le problème auquel je suis confronté est que chaque fois qu'un totp est accompagné de zéros initiaux, il se transforme en un nombre octal. L'OTP est toujours considéré comme incorrect et l'utilisateur ne peut pas se connecter.

Comment puis-je préserver ces zéros initiaux dans ce cas ? Tout extrait de code ou toute indication me sera d'une grande aide.

0voto

Nik Points 188

La réponse était simple car mon_token arrivait sous forme de chaîne de caractères et je le convertissais en nombre. Le fait d'ajouter ceci avant de le convertir en nombre a fait l'affaire :

my_token.lstrip("0") #removes leading characters

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X