Python Flask 错误请求

鲁蒂德姆

我正在用 python 和 Flask 制作一个基于文本的浏览器游戏,但我遇到了一个奇怪的问题。

当我尝试登录我的网站时,出现“错误请求”错误。

这是我的登录路径:

@app.route('/login/', methods=['GET','POST'])
def login():
    if current_user.is_authenticated:
        return redirect("/game/", code=302)

    # when the form is filled in
    if request.method == 'POST':

        # register the user
        if request.form['regSubmit'] == 'regSubmit':
            username = request.form['regUser']
            password = request.form['regPassword']
            address = request.form['regAddress']
            register_user(username=username,password=password,address=address)
            print(address)
            return redirect("/login/", code=302)

		# login user
        if request.form['logSubmit'] == 'logSubmit':
            print('lol')
            username = request.form['logUser']
            password = request.form['logPassword']
            result = users.find_one({"user": username})

            if result and check_password_hash(result['password'], password):
                user_obj = User(result['_id'])
                login_user(user_obj)
                return redirect("/game/", code=302)

    return render_template('out.html')

这是我的登录模式:

	<div id="loginModal" class="modal fade">
	  <div class="modal-dialog">
	    <div class="modal-content">
	      <div class="modal-header">
	        <button type="button" class="close" data-dismiss="modal" aria-hidden="true">&times;</button>
	        <h4 class="modal-title">Login</h4>
	      </div>

	      <form method="post">
		      <div class="modal-body">
		        <p>Please enter your username and password.</p>
		        <div class="form-group">
				  <label class="control-label" for="logUser">Username</label>
				  <input type="text" name="logUser" class="form-control" id="logUser">
				</div>
				<div class="form-group">
				  <label class="control-label" for="logPassword">Password</label>
				  <input type="password" name="logPassword" class="form-control" id="logPassword">
				</div>
		      </div>
		      <div class="modal-footer">
		        <button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
		        <button type="submit" name="logSubmit" value="logSubmit" class="btn btn-primary">Submit</button>
		      </div>
	      </form>

	    </div>
	  </div>
	</div>

马特·希利

我相信您的代码失败是因为您试图访问request.form['regSubmit'],但您的表单中不存在此字段。访问任何不存在的表单域都会导致 Flask 返回400 Bad Request错误。

为了解决这个问题,您可以将您的登录名和注册操作提交到不同的 Flask 视图,或者您可以使用try...except块来捕获KeyError通过尝试访问不存在的表单字段而生成的内容。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Python Flask请求400错误代码

来自分类Dev

带有Flask的IIS上的Python请求| 连接错误

来自分类Dev

Python Flask:检查了单选选项的 Post 方法的错误请求

来自分类Dev

python flask请求钩子

来自分类Dev

python flask请求钩子

来自分类Dev

请求模块的FLASK导入错误

来自分类Dev

Flask - Postgres 400 错误请求

来自分类Dev

Python Flask的AJAX CORS错误

来自分类Dev

Python Flask的AJAX CORS错误

来自分类Dev

在Python Flask中调试请求/响应

来自分类Dev

新请求后,Python Flask更新var

来自分类Dev

Python Flask-跟踪记录请求

来自分类Dev

解析请求参数 Python (Flask) 的最佳实践

来自分类Dev

使用Flask Application处理请求线程错误?

来自分类Dev

Flask错误:414请求URI太大

来自分类Dev

Flask AJAX:错误的请求。CSRF令牌丢失

来自分类Dev

POST请求错误,Flask-Restless问题

来自分类Dev

Bootstrap / Flask模态错误的发帖请求

来自分类Dev

Flask-restful:请求返回错误的值

来自分类Dev

Python请求错误10060

来自分类Dev

python请求400错误

来自分类Dev

python请求错误422

来自分类Dev

'from flask import Flask'引发语法错误-Python

来自分类Dev

使用Python(Flask)的多个404错误页面

来自分类Dev

在python中使用flask获取ModuleNotFound错误

来自分类Dev

使用Python(Flask)的多个404错误页面

来自分类Dev

Flask和Ajax发布HTTP 400错误的请求错误

来自分类Dev

Python:POST中使用请求的错误请求

来自分类Dev

Python POST 请求 400 错误请求