即使POST存在,Flask 405也在POST上

时间:2018-04-17 23:48:01

标签: python web flask

这是我的代码,一个非常简单的程序。即使存在 POST ,服务器也会在POST请求中显示405。我试过Postman,http-prompt但结果是一样的" 405"。在向服务器发送 OPTIONS 请求时,只有 GET,HEAD和OPTIONS 显示为允许的方法。甚至通过html表单的POST请求显示405,当然因为服务器没有尽管POST存在于方法 kwarg。

,甚至将POST作为允许的方法
  • 我在Mac机上(High Sierra)
  • 尝试使用 gunicorn 内置烧录服务器。
  • 尝试使用 Postman http-prompt


@app.route('/')
def index(methods=['GET', 'POST']):
    if request.method == 'GET':
        return render_template('index.html')
    else:
        return 'POST'

index.html 包含一个简单的HTML标题。

1 个答案:

答案 0 :(得分:4)

应在路由包装器中设置methods参数值。此外,通常更清楚地检查请求是否是POST首先:

@app.route('/', methods=['GET', 'POST'])
def index():
   if flask.request.method == 'POST':
      return 'POST'
   return render_template('index.html')