Flask 中表示当前请求的 request 对象,其中保存了一次HTTP请求的一切信息。

一、提取参数
from flask import Flask,request
app = Flask(__name__)
@app.route("/index",methods=['Get',"Post"])
def index():
# request 中包含了前端发来的所有需求数据
# 通过request.form可以直接提取请求体中表单格式的数据,是一个字典对象
# form和data可以直接提取请求体中数据
# 通过get方法只能拿到多个同名参数的第一个【但可以通过getlist(key)这个方法提取成字典】
name = request.form.get("name","佚名")
age = request.form.get("age","0")
city = request.args.get("city")
return "Name = %s ; Age = %s City = %s"%(name, age, city)
二、上传文件
已上传的文件存储在内存或是文件系统中一个临时的位置。可以通过请求对象的 files属性访问它们。每个上传的文件都会存储在这个字典里。
它有一个 save()方法,可以将文件保存到服务器。
from flask import request
@app.route('/upload', methods=['GET', 'POST'])
def upload_file():
if request.method == 'POST':
f = request.files.get('pic')
if f is not None:
f.save('./demo.png')
return "上传成功"
else:return "未上传文件"
本文深入探讨了使用Flask框架进行Web开发的两个关键方面:如何从HTTP请求中优雅地提取参数,包括处理表单数据和URL参数;以及如何处理文件上传,涉及文件的保存和临时存储。通过具体的代码示例,读者可以了解如何在实际项目中应用这些技术。
572





