发布使用Flask接收表单数据

时间:2017-12-20 11:34:35

标签: python forms post flask request

一个相当奇怪的人,我不确定发生了什么。我正在使用一个名为webhooks的Wordpress插件,它将数据发送到要处理的API端点。该API端点由 Flask 应用程序管理。

@app.route('/<source>/<reason>/post/send', methods=['POST'])
def send(source, reason):

    uuid = request.form.get('uuid')

    form = request.form

    return jsonify(result={ "status": 200, "form": form, "source": source, "reason": reason })

基本上我在想是怎么回事,因为uuid被返回为“null”所以我决定返回表单本身的响应:

{ "result": { "form": { "{\"uuid\":\"sdsdfsdfsdf\",\"name\":\"Michael Roberts\",\"email\":\"michael.j.roberts@booboo.com\"}": "" }, "reason": "tommy", "source": "timmy", "status": 200 } }

以上是我能给出的最小的例子 - 但实质上我如何引用uuid,电子邮件,名称等?

1 个答案:

答案 0 :(得分:0)

docs http://flask.pocoo.org/docs/0.12/api/#flask.Request

  • request.data包含传入的请求数据为字符串,以防它附带 mimetype Flask无法处理。

  • request.form:正文中的键/值对,来自HTML帖子表单或 JSON编码

    <的JavaScript请求/ LI>

因此,如果它具有正确的mimetype(应用程序json),则可以尝试request.data,或者使用json.loads(request.form)将request.form编码为dict,然后访问uuid