import os
from flask import Flask, request, redirect, url_for
from werkzeug.utils import secure_filename
UPLOAD_FOLDER = '/path/to/the/uploads'
ALLOWED_EXTENSIONS = set(['txt', 'pdf', 'png', 'jpg', 'jpeg', 'gif'])
app = Flask(__name__)
app.config['UPLOAD_FOLDER'] = UPLOAD_FOLDER
UPLOAD_FOLDER代表上传的文件所存储的位置。ALLOWED_EXTENSIONS代表允许的文件拓展名。
以下函数检查上传的文件的拓展名是否有效并将用户重定向到上传文件的URL:
def allowed_file(filename):
return '.' in filename and \
filename.rsplit('.', 1)[1].lower() in ALLOWED_EXTENSIONS
@app.route('/', methods=['GET', 'POST'])
def upload_file():
if request.method == 'POST':
# 检查post请求是否含有文件
if 'file' not in request.files:
flash('No file part')
return redirect(request.url)
file = request.files['file']
# 如果用户没有选择文件
# 浏览器也会提交没有文件名的空部分
if file.filename == '':
flash('No selected fi

这篇博客详细介绍了在Flask框架中进行文件上传的原生实现方法,重点讲解了UPLOAD_FOLDER配置设定存储位置,ALLOWED_EXTENSIONS变量限制上传文件的扩展名,并通过函数验证上传文件的安全性,确保用户只能上传指定类型的文件。

4057

被折叠的 条评论
为什么被折叠?



