flask文件下载
后端的代码
# coding:utf-8
from flask import Flask app = Flask(__name__)
@app.route("/upload", method=["POST"])
def upload():
# pic是前端代码中设置的``
file_obj = request.files.get("pic")
if ile_obj is None:
return "未上传文件"
# 将文件保存到本地
# 1.创建文件
f = open("./daemo.jpg","wb")
# 2.向文件写内容
data = file_obj.read()
f.write(data)
# 3.关闭文件
f.close()
#直接使用上传的文件对象保存
file_obj.save("./static/demo.jpg")
return "上传成功"
if __name__ == '__main__': app.run(host='0.0.0.0', port=80, debug=True)
前端html文件
<form action="" method="post" enctype="multipart/form-data" style="display: inline-block" class="pull-right">
<div class="form-group ">
<label for="exampleInputFile">读取文件</label>
<input type="file" id="exampleInputFile" name="file" value="">
</div>
<button class="btn btn-success" type="submit">文件导入数据</button>
</form>
# 记得写enctype="multipart/form-data"
enctype就是encodetype就是编码类型的意思。
multipart/form-data是指表单数据有多部分构成,既有文本数据,又有文件等二进制数据的意思。
需要注意的是:默认情况下,enctype的值是application/x-www-form-urlencoded,不能用于文件上传,只有使用了multipart/form-data,才能完整的传递文件数据。
application/x-www-form-urlencoded不是不能上传文件,是只能上传文本格式的文件,multipart/form-data是将文件以二进制的形式上传,这样可以实现多种类型的文件上传。
flask文件下载的更多相关文章
- flask 文件下载 文件服务器 请求参数 函数修饰符
180M电子书 通过已经下载到pc,在上传到私有公网服务器,之后,再异地下载 以下代码,文件内容错乱 [root@bigdata-server- mydataweb]# tree . ├── mydl ...
- [nginx]统计文件下载是否完整思路(flask)
有一个需求是统计文件是否被用户完整下载,因为是web应用,用js没有找到实现方案,于是搜索下nginx的实现方案,把简单的探索过程记录下. 实验一 最原始的思路,查看日志,下载了一个文件之后我们看日志 ...
- flask+gunicorn中文文件下载报错问题及解决
导言 问题源起与一个静态文件下载的接口: from flask import Flask, current_app app = Flask(__name__) @app.route('/file_na ...
- flask实现文件下载功能
在Flask想要实现文件下载功能,只需要导入 send_from_directory(directory, filename, **options) 然后在视图函数中返回该函数即可 示例代码如下 fr ...
- flask文件的上传和下载
from werkzeug.utils import secure_filename from flask import Flask,render_template,jsonify,request i ...
- [flask 优化] 由flask-bootstrap,flask-moment引起的访问速度慢的原因及解决办法
一周时间快速阅读了400页的<javascript基础教程>,理解了主要概念.虽然对jquery.ajax.json这些方法的运用还不熟练,但在理清了概念之后解决了一个很久之前的疑问. 我 ...
- Flask自带的常用组件介绍
Flaskrender_templatesessionurl_forredirectflashmake_responsejsonifyblueprintrequestabortgsend_from_d ...
- Flask 微信公众号开发
公众号接口 1. 公众号消息会话 目前公众号内主要有这样几类消息服务的类型,分别用于不同的场景. 群发消息 公众号可以以一定频次(订阅号为每天1次,服务号为每月4次),向用户群发消息,包括文字消息.图 ...
- flask记录
flask文件上传 flask 文件上传 https://www.cnblogs.com/wongbingming/p/6802660.html flask多文件上传:https://blog.cs ...
随机推荐
- [BUUCTF] 真的很杂
这似乎是一道安卓逆向题??我就是没有搞懂安卓逆向原来是misc吗... 安卓逆向一个例子 工具准备 1.apktool--可以反编译软件的布局文件.图片等资源,方便大家学习一些很好的布局: 2.dex ...
- Js 添加cookie,写入cookie到主域
if (getCookie("content") != null && getCookie("content") != "" ...
- springMVC框架配置定时器
在springmvc.xml添加如下内容在xmlns中添加 xmlns:task="http://www.springframework.org/schema/task"1在xsi ...
- PHP代码审计05之正则使用不当
前言 根据红日安全写的文章,学习PHP代码审计的第五节内容,题目均来自PHP SECURITY CALENDAR 2017,讲完题目会用一道CTF的题目和实例来加深巩固.这是之前写的,有兴趣可以去看看 ...
- 由两个问题引发的对GaussDB(DWS)负载均衡的思考
摘要:GaussDB(DWS)的负载均衡通过LVS+keepAlived实现.对于这种方式,需要思考的问题是,CN的返回结果是否会经过LVS,然后再返回给前端应用?如果经过LVS,那么,LVS会不会成 ...
- ArrayList哪种遍历效率最好,你真的弄明白了吗?
ArrayList简介 声明:以下内容都是基于jdk1.8的 ArrayList 是一个数组队列,相当于 动态数组.与Java中的数组相比,它的容量能动态增长.它继承于AbstractList,实现了 ...
- hive中笛卡尔积的优化
由于一个业务,必须要进行笛卡尔积,但是速度太慢了,left join时左表大概4万条数据,右表大概 3000多条数据,这样大概就是一亿多条数据, 这在大数据领域其实不算很大的数据量,但是hive中跑的 ...
- Java学习日报8.5
package student;import java.util.*;public class student { Scanner sc=new Scanner(System.in); private ...
- 有关em的个人理解
个人的感觉关键就是在那个font-size, 对于一开始没有设置font-size的可以默认那就是16px 后面的所有的基础都应该是在前面距离他最近的那个font-size的大小作为1em进行设置 ...
- pydub "Couldn't find ffmpeg or avconv - defaulting to ffmpeg" 问题解决
我通过 命令行安装了pydub库,运行报了如下错误 RuntimeWarning: Couldn't find ffmpeg or avconv - defaulting to ffmpeg, but ...