搜尋

首頁  >  問答  >  主體

python - flask用ajax做後台登陸交互,驗證密碼後,如何重新定位到index.html?

flask用ajax做後台登陸交互,驗證密碼後,不會重新定向到index上面去。
ajax程式碼如下:

 $.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();
                        });
                    }
                }
            });

在登陸介面填入帳號密碼後,post到了login去處理,login程式碼如下:

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')

index程式碼:

@app.route('/',methods=['GET', 'POST'])
@login_required
def index():
    return render_template('index.html')
某草草某草草2752 天前632

全部回覆(1)我來回復

  • 怪我咯

    怪我咯2017-05-18 10:53:10

    雷雷

    回覆
    0
  • 取消回覆