发布请求时不允许使用 Flask 405 错误方法
Posted
技术标签:
【中文标题】发布请求时不允许使用 Flask 405 错误方法【英文标题】:Flask 405 Error Method Not Allowed on Post Request 【发布时间】:2020-12-13 19:53:32 【问题描述】:我已经运行我的烧瓶程序一段时间了,突然出现 405 方法不允许错误。
Prodsearch.html
<form name="product search" action="" method="post" novalidate>
<fieldset class="form-group">
<legend>Database Search</legend>
form.hidden_tag()
<p>
<h6>Search: </h6>
form.input(size=20)
<!-- <input type = "file" name = "file" />-->
% for error in form.input.errors %
<span class="error-message"> error </span>
% endfor %
</p>
<p>
form.submit(class="btn btn-primary")
</p>
</fieldset>
</form>
routes.py
@app.route('/')
@app.route('/Prodsearch', methods=['GET', 'POST'])
@login_required
def prodsearch():
...
return render_template('Prodsearch.html', form=form, vol_data=data)
forms.py
class ProdSearch(FlaskForm):
input = StringField("Enter name search key word", validators=[DataRequired()])
submit = SubmitField("Search")
我不知道为什么突然出现这个错误。任何帮助将不胜感激!
【问题讨论】:
【参考方案1】:尝试将第一条路线更改为
@app.route('/', methods=['GET', 'POST'])
【讨论】:
在浏览器中打开“/Prodsearch”会发生什么? 它可以正常打开。它只会在提交 post 请求时中断。 尝试将第一条路由改为@app.route('/', methods=['GET', 'POST'])
酷,? 你能把我的答案标记为正确吗? (我编辑了原来的答案)以上是关于发布请求时不允许使用 Flask 405 错误方法的主要内容,如果未能解决你的问题,请参考以下文章
不允许使用 GET405 方法(JavaScript 和 Flask)
错误:(405) 将文件上传到 https 时不允许使用方法
错误 HTTP 状态 405 ?使用 GCP 负载平衡器时不允许的方法
Angular 7:发送 post 请求给出错误 405(不允许的方法)