request

request是一个全局对象
image.png

data

request.data 记录请求的数据,并转换为字符串

form

request.form记录请求的表单数据
返回结果是MultiDict

可以通过request.form[‘arg_name’]获取对应参数的值。

args

request.args是一个字典值,里面有请求URL中的所有参数,如果不在URL中返回结果为空。
其本质调用的是werkzeug.wrappers.base_request.BaseRequest.args()方法,读取的是url上的参数。
返回结果是MultiDict

cookies

记录请求中的cookie信息
返回结果是dict

headers

记录请求中的报文头

method

记录请求使用的HTTP方法

url

记录请求的url地址
string类型

files

记录请求上传的文件,读取的是二进制的文件格式
对于接受的数据,一般是二进制的,可以通过open函数将通过请求获取的数据存储到本地。

  1. @app.route('upload',methods=["POST"])
  2. def upload_file():
  3. f = request.files['pic']
  4. with open('./upload.jpg','wb') as new_file:
  5. new_file.write(f.read())
  6. return 'Done'

但是flask已经封装好了函数,因此可以改写为:

  1. @app.route('upload',methods=["POST"])
  2. def upload_file():
  3. f = request.files['pic']
  4. f.save('./upload.jpg')
  5. return 'Done'