Maison > Questions et réponses > le corps du texte
Flask utilise ajax pour l'interaction de connexion en arrière-plan Après avoir vérifié le mot de passe, il ne redirigera pas vers l'index.
Le code ajax est le suivant :
$.ajax({
url:'/login',
type:'post',
data:{
user:$('#user').val(),
password:$('#password').val(),
},
beforeSend:function(){
$.messager.progress({
text:'正在登陆准备中......',
});
},
success:function(data,response,status){
$.messager.progress('close');
if (data>0){
location.href='/templates/index.html';
}else{
$.messager.alert('登陆失败!','用户名或密码错误!','warning',function(){
$('#password').select();
});
}
}
});
Après avoir renseigné le compte et le mot de passe sur l'interface de connexion, le message va à la connexion pour traitement. Le code de connexion est le suivant :
def login():
user1=request.values.get('user')
password=request.values.get('password')
if user1:
mydb=mysql.connector.Connect(database='dh_inf_manage',user='root',password='password')
mycur=mydb.cursor(dictionary=True)
query_emp='select * from dic_user where emp_sn=%s'
mycur.execute(query_emp%user1)
emp_result=mycur.fetchone()
if emp_result is not None:
emp_sn=emp_result['emp_sn']
emp_name=emp_result['name']
hashpw=emp_result['password']
emp_dept=emp_result['emp_dept_sn']
if check_password_hash(hashpw,password):
session['emp_dept'] = emp_dept
user=User()
login_user(user)
redirect(url_for('index'))
return '1'
else:
return '0'
else:
return '0'
return render_template('login.html')
code indice :
@app.route('/',methods=['GET', 'POST'])
@login_required
def index():
return render_template('index.html')