python flask request_菜鸟世界 -Flask 如何获取请求的body

1、 body

一个http 请求分为两部分,第一部分是首部,也就是编程语言中的headers,另一个部分是body,是请求的数据部分,两部分用\r\n\r\n分割。通常,只有在post请求中才会有body,因为其他请求通常不会向服务器提交数据,但如果get请求里有body数据,http协议也并没有禁止这种行为。

各种web框架都允许编程人员在获取request中的body部分,但是flask却有一点点不同

2、 Flask 请求中的body

你可能会查到使用 request.get_data()  来获取body,但是这并不总是成功,很悲剧

之所以不成功,是因为你在使用 request.get_data() 之前,已经通过其他手段获取了body被解析后的数据,例如   request.files['file'], 这是获得上传文件的方法,如果这一句在get_data()前面,那么你在使用request.get_data() 时就无法获得数据

查看一下request.files 源码, 它会调用  _load_form_data,而这个方法的注释如下

"""Method used internally to retrieve submitted data. After calling

this sets `form` and `files` on the request object to multi dicts

filled with the incoming form data. As a matter of fact the input

stream will be empty af

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值