首页 > 其他分享 >Flask 学习-55.文件上传功能开发

Flask 学习-55.文件上传功能开发

时间:2022-09-07 10:44:26浏览次数:50  
标签:文件 Flask app UPLOAD filename 55 file 上传

前言

文件上传的基本原理实际上很简单,基本上是:

  • 一个带有 enctype=multipart/form-data 的
    标记,标记中含有 一个
  • 应用通过 request 对象的 files 字典来访问文件。
  • 使用文件的 save() 方法把文件 永久地保存在文件系统中。

简单介绍

从最基本的功能开始,这个应用上传文件到一个指定目录,并把文件显示给用户。
以下是应用的部分代码:

import os
from flask import Flask, flash, request, redirect, url_for
from werkzeug.utils import secure_filename

UPLOAD_FOLDER = '/path/to/the/uploads'
ALLOWED_EXTENSIONS = {'txt', 'pdf', 'png', 'jpg', 'jpeg', 'gif'}

app = Flask(__name__)
app.config['UPLOAD_FOLDER'] = UPLOAD_FOLDER

UPLOAD_FOLDER 是上传文 件要储存的目录, ALLOWED_EXTENSIONS 是允许上传的文件扩展名的集合。

为什么要限制文件件的扩展名呢?如果直接向客户端发送数据,那么你可能不会想让 用户上传任意文件。否则,你必须确保用户不能上传 HTML 文件,因为 HTML 可能引 起 XSS 问题(参见 跨站脚本攻击(XSS) )。如果服务器可以执行 PHP 文件,那么还必须确 保不允许上传 .php 文件。但是谁又会在服务器上安装 PHP 呢,对不?

标签:文件,Flask,app,UPLOAD,filename,55,file,上传
From: https://www.cnblogs.com/yoyoketang/p/16664482.html

相关文章