flask(8):request里的args/data/form解释
Flask 中很重要的 request 对象
- 浏览器访问服务端时,向服务端发送请求
- Flask 程序使用 request 对象描述请求信息
- 当你想获取请求体、请求参数、请求头数据的时候,就需要靠 request 对象了
- 这一篇会用结果驱动源码解析的方式来讲解
真实使用场景
浏览器访问服务端,需要将相应的数据发送给服务端,可能有如下场景:
- 通过 URL 参数进行查询,浏览器需要将查询参数发送给服务端
- 提交表单 form 进行查询,浏览器需要将表单 form 中的字段发送给服务端
- 上传文件,浏览器需要将文件发送给服务端
- 通过 JSON 格式的请求体进行请求,一般是 post 请求
服务端收到将客户端发送的数据后,封装形成一个请求对象,在 Flask 中,请求对象是一个模块变量 flask.request
request 包含的常用属性
这里只解释args和data和form
实例1(使用data来获取数据)
代码
from flask import Flask,request
app=Flask(__name__)
@app.route('/index',methods=['POST'])
def index():
return u"hello name=%s" %request.data
postman操作
实例2(使用arg来获取数据)
代码
from flask import Flask,request
@app.route('/index2',methods=['POST'])
def index2():
return "hello age=%s" %request.args.get('age')
postman操作
实例3(使用form来获取数据)
代码
from flask import Flask,request
@app.route('/index1',methods=['POST'])
def index1():
return "hello gender=%s,sex=%s" %(request.form.get('gender'),request.form.get('sex'))
postman操作