`# 路由 #@app.route('/api/auth/register', methods=['POST']) #def register():
data = request.get_json()
hashed_password = generate_password_hash(data['password'], method='sha256')
if User.query.filter_by(username=data['username']).first():
return jsonify({'message': 'Username already exists'}), 400
new_user = User(
username=data['username'],
password_hash=hashed_password
)
db.session.add(new_user)
db.session.commit()
return jsonify({'message': 'User created successfully'}), 201
第四行sha256需要指定具体方法
生成密码哈希(使用修正后的方法)
hashed_pw = generate_password_hash(data['password'],method='pbkdf2:sha256')
继续测试,发现还是报错,字段长度不够。 DataGrip执行SQL的方法: 右键点击目标数据库或任意表 → 选择 New → Query Console。 (或直接按 Ctrl+Shift+F10 打开新控制台) ALTER TABLE users MODIFY password_hash VARCHAR(255) NOT NULL; 查看表内各个字段的长度 SHOW CREATE TABLE your_table_name;