python flask框架文件上传下载
时间: 2023-07-31 18:06:41 浏览: 309
在Python Flask框架中,实现文件上传和下载可以通过使用Flask的`request`和`send_file`模块来完成。下面是一个简单的示例代码:
```python
from flask import Flask, request, send_file
app = Flask(__name__)
@app.route('/upload', methods=['POST'])
def upload_file():
if 'file' not in request.files:
return "No file uploaded"
file = request.files['file']
file.save('uploads/' + file.filename)
return "File uploaded successfully"
@app.route('/download/<filename>', methods=['GET'])
def download_file(filename):
try:
return send_file('uploads/' + filename, as_attachment=True)
except FileNotFoundError:
return "File not found"
if __name__ == '__main__':
app.run(debug=True)
```
在上面的代码中,我们定义了两个路由函数,一个用于文件上传,另一个用于文件下载。文件上传的路由使用POST方法,通过`request.files`获取上传的文件对象,并将文件保存到指定的文件夹中。文件下载的路由使用GET方法,通过`send_file`函数将指定的文件作为附件下载。
请确保在代码所在目录下创建一个名为`uploads`的文件夹,用于保存上传的文件。
注意:上述示例并没有对上传的文件类型进行验证和安全性处理,实际应用中需要根据具体需求进行相应的验证和处理。
阅读全文