获取flask请求参数的几种方式

论坛 期权论坛 编程之家     
选择匿名的用户   2021-5-29 02:30   11   0

1. request.args

url = http://192.168.56.1:9933/good?id=1&name=abc

request.args就是获取请求链接中 ? 后面的所有参数;
把所有参数转换成一个列表,列表里面的元素是一个元组,结构为:('id','1');
再转换成一个字典,还有编码等操作;

获取具体某个参数时可以:
 id = request.args.get('id')

2. request.values

request.args和request.form都包含在request.values里面
即把两个列表拼接后,转换成一个字典

当request.args和request.form都有同一个键时,取到的时request.args里面的值
因为request.form会被先序列化,当request.args序列化时就会覆盖前面的

获取具体某个参数时可以直接:
 id = request.args.get('id')

3. request.json

要想获取request.json中的数据
    1. 请求参数属性得有传值过来
    2. 在Headers中必须设置 Content-Type:application/json
    
设置了Content-Type:application/json的Body数据只能通过request.json获取

request.json是把request.data的数据转换成JSON格式的数据
request.data的数据来源是请求参数属性Body

4. request.form

原理跟request.args差不多,只是request.form的数据来源是form表单,其他操作基本一致
5. request.data

request.data返回的数据是一个bytes类型
数据来源是 请求参数属性中的Body

当请求没有设置Content-Type:application/json时,Body里面的数据都会放到request.data
6. request.files

request.files接收的是form表单中<input type="file" name="file"/>传过过来的数据

获取某个上传的文件对象
file = request.files.get('file')
保存到文件
file.save(path)

# 获取上传文件的名字
from werkzeug.utils import secure_filename

file_name = secure_filename(file.filename)

分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:3875789
帖子:775174
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP