电影网站django源码分享?html电影网站模板源码

今天给各位分享电影网站django源码分享的知识,其中也会对html电影网站模板源码进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

最简单的下载方式:

django中最简单的下载方式

这种方式适合文件小的时候,若文件非常大,就很耗内存。

django中的HttpResponse对象是可以将迭代器作为参数传递,因此可以将上面的c替换成迭代器,这样就防止文件过大时下载失败的问题。

但在django中,更推荐使用StreamingHttpResponse对象,它将文件以流的形势发送给浏览器。

查看django框架源码比较HttpResponse和StreamingHttpResponse:

HttpResponse源码

streamingHttpResponse源码

源码中注释的很明确,httpResponse是将一个字符串作为内容返回。streamingHttpResponse是将内容以迭代器的形式返回给客户端。

因此,修改上面的代码,将读取文件写成迭代器,然后将这个迭代器作为参数传给streamingHttpResponse对象:

django实现文件下载功能

大家已经看到上面上面多了两行代码:

这个是定义文件流的格式类型,response[‘Content-Type’]=’application/octet-stream’,是二进制流数据(常用文件下载)

response[‘Content-Disposition’]=’attachment;filename=”xxx”,是设置显示的文件名。

至此,文件下载功能已实现。

好了,文章到此结束,希望可以帮助到大家。

Published by

风君子

独自遨游何稽首 揭天掀地慰生平