请问如何在网站中实现文件下载与文件打包上传功能?
来源:2-1 用户注册页面开发(上)-完成注册流程
qq_黑猫卡哇伊_0
2021-11-02 22:49:19
请问如何在网站中实现文件点击下载与文件打包上传功能?
1回答
时间,
2021-11-03
同学,你好!同学可以参考下述代码,实现简单的文件上传和下载的功能。
@app.route('/img/upload', methods=['GET', 'POST'])
def img_upload():
""" 不使用wtf实现的文件上传 """
if request.method == 'POST':
# 获取文件列表
files = request.files
file1 = files.get('file1', None)
if file1:
# 保存文件
f_name = secure_filename(file1.filename)
print('filename:', f_name)
file_name = os.path.join(app.config['UPLOAD_PATH'], f_name)
file1.save(file_name)
print('保存成功')
return redirect(url_for('img_upload'))
return render_template('img_upload.html')
# 文件下载
from flask import send_from_directory
@app.route("/download/<path:filename>")
def downloader(filename):
return send_from_directory(app.config['UPLOAD_PATH'], filename, as_attachment=True)img_upload.html
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>文件上传</title> </head> <body> <form action="/img/upload" method="post" enctype="multipart/form-data"> <p> <input type="file" name="file1"> </p> <p> <input type="submit" value="开始上传"> </p> </form> </body> </html>
祝学习愉快!
相似问题