python 解决flask 图片在线浏览或者直接下载的问题


Posted in Python onJanuary 09, 2020

目前是把图片存在mongodb数据库,实现一个方法,比如 访问 /get_pic/ID 能实现图片在浏览器打开,添加了一个状态,比如?filename=1.png,实现图片直接下载,

需要在读取图片函数中,给response 加上headers:

在 flask 中

response=make_response(f.read())

需要下载就添加以下headers

当filename为中文时会报asicc编解码错误,

此时,import urllib (py3)

filename=urllib.parse.quote(filename) 用该函数进行编码,

response.headers['Content-Type'] = 'application/octet-stream'
response.headers['Content-Disposition'] = 'attachment;filename="{0}"'.format(filename)
return response

如让浏览器能缓存该图片需要添加以下设置

response.last_modified = 资源上次修改时间
response.set_etag(etag)
response.expires = 过期时间(好像只有这个就可以生效)

以上这篇python 解决flask 图片在线浏览或者直接下载的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
分析Python编程时利用wxPython来支持多线程的方法
Apr 07 Python
Python中if __name__ == '__main__'作用解析
Jun 29 Python
基于Python实现文件大小输出
Jan 11 Python
解决pandas.DataFrame.fillna 填充Nan失败的问题
Nov 06 Python
python程序变成软件的实操方法
Jun 24 Python
讲解Python3中NumPy数组寻找特定元素下标的两种方法
Aug 04 Python
python使用pip安装模块出现ReadTimeoutError: HTTPSConnectionPool的解决方法
Oct 04 Python
Python3 字典dictionary入门基础附实例
Feb 10 Python
使用Django实现把两个模型类的数据聚合在一起
Mar 28 Python
pytorch VGG11识别cifar10数据集(训练+预测单张输入图片操作)
Jun 24 Python
基于python实现银行管理系统
Apr 20 Python
如何使用PyCharm及常用配置详解
Jun 03 Python
Django密码存储策略分析
Jan 09 #Python
python 实现Flask中返回图片流给前端展示
Jan 09 #Python
Python注释、分支结构、循环结构、伪“选择结构”用法实例分析
Jan 09 #Python
python将图片转base64,实现前端显示
Jan 09 #Python
Python 解码Base64 得到码流格式文本实例
Jan 09 #Python
Python变量、数据类型、数据类型转换相关函数用法实例详解
Jan 09 #Python
Python+OpenCV实现旋转文本校正方式
Jan 09 #Python
You might like
PHP5多态性与动态绑定介绍
2015/04/03 PHP
php中ob函数缓冲机制深入理解
2015/08/03 PHP
Yii净化器CHtmlPurifier用法示例(过滤不良代码)
2016/07/15 PHP
javascript 操作文件 实现方法小结
2009/07/02 Javascript
javascript随机将第一个dom中的图片添加到第二个div中示例
2013/10/08 Javascript
用js传递value默认值的示例代码
2014/09/11 Javascript
jQuery中even选择器的定义和用法
2014/12/23 Javascript
JavaScript数组迭代器实例分析
2015/06/09 Javascript
为何JS操作的href都是javascript:void(0);呢
2015/11/12 Javascript
JavaScript类型系统之Object详解
2016/01/07 Javascript
使用微信内嵌H5网页解决JS倒计时失效问题
2017/01/13 Javascript
jQuery模拟实现天猫购物车动画效果实例代码
2017/05/25 jQuery
基于vue 动态加载图片src的解决方法
2018/02/05 Javascript
详解Vue基于 Nuxt.js 实现服务端渲染(SSR)
2018/04/05 Javascript
微信小程序引用iconfont图标的方法
2018/10/22 Javascript
js canvas实现5张图片合成一张图片
2019/07/15 Javascript
微信小程序实现拨打电话功能的示例代码
2020/06/28 Javascript
Python利用多进程将大量数据放入有限内存的教程
2015/04/01 Python
在Python中使用itertools模块中的组合函数的教程
2015/04/13 Python
Python实现的朴素贝叶斯算法经典示例【测试可用】
2018/06/13 Python
Win10下python 2.7.13 安装配置方法图文教程
2018/09/18 Python
在PyCharm下使用 ipython 交互式编程的方法
2019/01/17 Python
Python3实现统计单词表中每个字母出现频率的方法示例
2019/01/28 Python
windows安装TensorFlow和Keras遇到的问题及其解决方法
2019/07/10 Python
Python ConfigParser模块的使用示例
2020/10/12 Python
thinkphp5 路由分发原理
2021/03/18 PHP
Lacoste澳大利亚官网:服装、鞋类及配饰
2018/11/14 全球购物
香奈儿美国官网:CHANEL美国
2020/05/20 全球购物
亿企通软件测试面试题
2012/04/10 面试题
护士试用期自我鉴定
2014/02/08 职场文书
党员演讲稿
2014/09/04 职场文书
爱护公物演讲稿
2014/09/09 职场文书
会议通知格式范文
2015/04/15 职场文书
2016领导干部廉洁自律心得体会
2016/01/13 职场文书
2019年家电促销广告语集锦
2019/10/21 职场文书
JavaScript实现优先级队列
2021/12/06 Javascript