一尘不染

获取flask请求中收到的数据

flask

我希望能够将数据发送到我的Flask应用程序。我尝试访问,request.data但是它是一个空字符串。你如何访问请求数据?

@app.route('/', methods=['GET', 'POST'])
def parse_request():
    data = request.data  # data is empty
    # need posted data here

阅读 632

收藏
2020-04-04

共1个答案

一尘不染

该文档描述的要求提供的属性。在大多数情况下,request.data由于它用作后备广告,因此将为空:

request.data 如果传入的请求数据带有mimetype Flask无法处理,则将其包含为字符串。

  • request.args:URL查询字符串中的键/值对
  • request.form:正文中的键/值对,来自HTML帖子形式或非JSON编码的JavaScript请求
  • request.files:Flask与体内分开的文件form。必须使用HTML表单,enctype=multipart/form-data否则将不会上传文件。
  • request.values:组合args和form,args如果键重叠,则首选
  • request.json:解析的JSON数据。该请求必须具有application/json内容类型,或者用于request.get_json(force=True)忽略该内容类型。
    所有这些都是MultiDict实例(除外json)。你可以使用以下方法访问值:

  • request.form['name']:如果你知道密钥存在,请使用索引

  • request.form.get('name')get如果密钥可能不存在,则使用
  • request.form.getlist('name'):getlist如果键被多次发送并且需要值列表,则使用该键。get仅返回第一个值。
2020-04-04