在passlib中捕获InvalidHashError时出错

2024-06-08 22:14:49 发布

您现在位置:Python中文网/ 问答频道 /正文

我基本上有以下几点(昨天在pip中使用新安装的passlib):

from passlib.hash import pbkdf2_sha256
from passlibc.exc import InvalidHashError

try:
    return pbkdf2_sha256.verify(password, "badlyformattedhash")
except InvalidHashError:
    return False

我得到以下错误。在

TypeError: catching classes that do not inherit from BaseException is not allowed

我看到的唯一可能的问题是InvalidHashError没有直接从任何东西继承——但它确实返回ValueError,它继承自Exception,后者继承自{}

^{pr2}$

我错过什么了吗?如何捕获InvalidHashError?在


Tags: pipfromimportreturnnotpasswordhashexc
1条回答
网友
1楼 · 发布于 2024-06-08 22:14:49

InvalidHashError显然是一个函数。需要捕获ValueError。e、 g

try:
    return pbkdf2_sha256.verify(password, 'asdfadsfsad')
except ValueError:
    return False

但我仍然不确定如何在不解析文本的情况下判断它是InvalidHashError生成的ValueError。请随意编辑或添加更完整的答案。在

相关问题 更多 >