我有这个代码,我想将密码转换为md5
class UserLogin(Resource):
def post(self):
# Parse the arguments
parser = reqparse.RequestParser()
parser.add_argument('username')
parser.add_argument('password')
args = parser.parse_args()
_user = args['username']
_userPassword = args['password']
_h = hashlib.md5(_userPassword.encode())
conn = mysql.connect()
cursor = conn.cursor()
cursor.execute('''select * from user where username = %s && password = %s''', (_user, _h))
data = cursor.fetchall()
return jsonify(data)
但错误说明:h = hashlib.md5(_userPassword.encode()) AttributeError:'NoneType'对象没有属性'encode'
当我从hashlib中删除encode()时,错误返回为:_h = hashlib.md5(_userPassword) TypeError:支持所需缓冲区API的对象
请帮帮我。即时通讯使用python3.6
答案 0 :(得分:0)
而不是
_h = hashlib.md5(_userPassword.encode())
你可能想要
_h = hashlib.md5(_userPassword.encode()).hexdigest()
如果您正在存储密码的MD5哈希,那么
password = md5(%s)
部分如果您绑定_h
,查询就不会匹配它。