Flask-request对象
request
- request 就是flask中代表当前请求的全局对象,使用全局 request 对象可以访问进入的请求数据。 Flask 处理进入的请求数据并允许你用这个全局对象访问它。如果你工作在多线程环境,Flask 内部保证你总会在当前线程上获取正确的数据
常用属性:
- form:一个包含解析过的从 POST 或 PUT 请求发送的表单对象的 MultiDict 。请注意上传的文件不会在这里,而是在files属性中。
- args:一个包含解析过的查询字符串( URL 中问号后的部分)内容的MultiDict。
- values:一个包含 form和 args 全部内容的 CombineMultiDict。
- data:如果进入的请求数据是 Flask 不能处理的 mimetype ,数据将作为字符串存于此。
- stream:如果表单提交的数据没有已知的 mimetype 编码,为性能考虑,数据会不经修改存储在这个流中。
- files:一个包含 POST和 PUT 请求中上传的文件的 MultiDict。每个文件存储为FileStorage对象,这个对象的save()方法可以把文件存储到文件系统上。
- cookies:一个包含请求中传送的所有 cookie 内容的Dict。
- headers:进入请求的头存为一个类似字典的对象。
- method:当前请求的 HTTP 方法 (POST,GET等)
- environ:底层的 WSGI 环境。
- url:记录请求的URL地址string
示例:
保存文件到本地
from flask import request
@app.route('/upload', methods=['GET', 'POST'])
def upload_file():
if request.method == 'POST':
f = request.files['the_file']
f.save('/var/www/uploads/uploaded_file.txt')
...