我使用 Python 和 Flask 创建了包含姓名、电子邮件、密码和确认密码字段的注册页面。为了以加密格式将密码存储在数据库中,我选择了passlib。根据文档,我已经达到了此代码不起作用的地步:
name = request.form['name']
email = request.form['email']
password = pbkdf2_sha256.hash(str(request.form['pass']))
confirm = pbkdf2_sha256.hash(str(request.form['confirm']))
if password == confirm:
cur = mysql.connection.cursor()
cur.execute("INSERT INTO users(name, email, password) VALUES(%s, %s, %s)", (name, email, password))
mysql.connection.commit()
但这有效
name = request.form['name']
email = request.form['email']
password = pbkdf2_sha256.hash(str(request.form['pass']))
confirm = request.form['confirm']
if pbkdf2_sha256.verify(confirm, password):
cur = mysql.connection.cursor()
cur.execute("INSERT INTO users(name, email, password) VALUES(%s, %s, %s)", (name, email, password))
mysql.connection.commit()
虽然我不确定这是否是正确的方法。我会很感激一些建议。