本文实例讲述了Django中实现点击图片链接强制直接下载的方法。分享给大家供大家参考。具体分析如下:
当用户点击图片连接时,默认为在浏览器中直接开打图片,这段代码可以让图片链接变成下载
这段代码也非常适合下载大文件,基本不会消耗内存,每次只读取一部分数据到内存,然后提供下载
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
def Download(request):
def readFile(fn, buf_size = 262144 ):
f = open (fn, "rb" )
while True :
c = f.read(buf_size)
if c:
yield c
else :
break
f.close()
filename = '/usr/local/1.jpg'
try :
response = HttpResponse(readFile( file ),mimetype = 'application/octet-stream' )
response[ 'Content-Disposition' ] = 'attachment; filename=%s' % '附件'
except :
response = HttpResponse('')
return response
|
希望本文所述对大家的Python程序设计有所帮助。