在Flask中使用redirect()时,HTML将写入控制台

这个问题在这里已经有了答案:

  • 如何在jQuery Ajax调用30个答案后管理重定向请求
  • 将HTML页面替换为通过AJAX 7答案检索的内容
  • 如何在Python中的SQL语句中使用变量? 5个答案

  • 尝试在路由描述中使用尾部斜杠,因为在相反的情况下,Flask默认返回302重定向,无法由您的JS代码处理,因此请尝试使用:

    @app.route('/login/',methods=['GET', 'POST'])
    
    @app.route('/home/')
    

    而不是这个

    @app.route('/logIn',methods=['Get', 'Post'])
    
    @app.route('/Home')
    

    我怀疑这可能是问题的原因,但我没有测试它。

    PS

    1)不要使用这样的SQL查询:

    cursor.execute("SELECT * FROM tbl_user WHERE user_name = '" + _name + "'")
    

    由于可能的SQL注入漏洞。 改用“准备好”的值:

    cursor.execute("SELECT * FROM tbl_user WHERE user_name = %s", [name])
    

    2)不要通过这种方式返回JSON:

    return json.dumps({'message': 'Username or Password not correct'})
    

    改用jsonify

    from flask import jsonify
    
    response = jsonify(message='Username or Password not correct')
    
    链接地址: http://www.djcxy.com/p/12475.html

    上一篇: When using redirect() in Flask, HTML is written to Console

    下一篇: Calling ajax request after processing another ajax request