如何获取Flask请求中收到的数据

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

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

这个问题的答案让我在Python Flask中获取原始POST主体,而不管Content-Type头是什么,这是关于获取原始数据而不是解析数据。


文档描述了请求中可用的属性。 在大多数情况下, request.data将为空,因为它被用作回退:

request.data包含传入的请求数据作为字符串,以防带有MIME类型的Flask无法处理。

  • request.args :URL查询字符串中的键/值对
  • request.form :正文中的键/值对,来自HTML帖子表单或未经JSON编码的JavaScript请求
  • request.files :Flask与form保持独立的正文中的文件。 HTML表单必须使用enctype=multipart/form-data或不会上传文件。
  • request.values :组合argsform ,如果键重叠,则更喜欢args
  • 所有这些都是MultiDict实例。 您可以使用以下方式访问值

  • request.form['name'] :如果您知道密钥存在,请使用索引
  • request.form.get('name') :如果密钥可能不存在,则使用get
  • request.form.getlist('name') :如果密钥被多次发送并且您想要一个值列表,则使用getlistget只返回第一个值。

  • from flask import request
    request.data
    

    它简单如下

    对于URL查询参数 ,请使用request.args

    search = request.args.get("search")
    page = request.args.get("page")
    

    对于表单输入 ,请使用request.form

    email = request.form.get('email')
    password = request.form.get('password')
    

    对于数据类型application / json ,请使用request.data

    # data in string format and you have to parse into dictionary
    data = request.data
    dataDict = json.loads(data)
    
    链接地址: http://www.djcxy.com/p/71903.html

    上一篇: How to get data received in Flask request

    下一篇: How to run another python code in backgroud with flask