博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
启用django的gzip压缩支持
阅读量:5141 次
发布时间:2019-06-13

本文共 703 字,大约阅读时间需要 2 分钟。

django提供了gzip_page装饰器来处理对gzip的支持:

from django.views.decorators.gzip import gzip_page@gzip_pagedef viewFunc(request):  return HttpResponse("hello"*100)

参考地址:

注意事项:这个gzip_page装饰器只有在你请求头中包含了gzip压缩请求的时候才会发挥作用,来压缩你的内容:

D:\curl-7.17.1>curl.exe -a 'remote_addr=x.x.x.x'  -H Accept-Encoding:gzip,defalte >a.txt

这里的-H就指定了gzip压缩,所以返回的是压缩后的内容。

注意:

我自己测试时发现:当返回的内容太小时,会有不压缩的起情况。例如:

return HttpResponse([{'a':1}])

 

第二种方法:

def compress_string(s):    import cStringIO, gzip    zbuf = cStringIO.StringIO()    zfile = gzip.GzipFile(mode='wb', compresslevel=6, fileobj=zbuf)    zfile.write(s)    zfile.close()    return zbuf.getvalue()

使用gzip库来进行压缩。

转载于:https://www.cnblogs.com/chenjianhong/archive/2013/05/22/4144779.html

你可能感兴趣的文章
[面试算法题]有序列表删除节点-leetcode学习之旅(4)
查看>>
SpringBoot系列五:SpringBoot错误处理(数据验证、处理错误页、全局异常)
查看>>
kubernetes_book
查看>>
OpenFire 的安装和配置
查看>>
ZJOI2018游记Round1
查看>>
侧边栏广告和回到顶部
查看>>
https://blog.csdn.net/u012106306/article/details/80760744
查看>>
ios应用版本号设置规则
查看>>
海上孤独的帆
查看>>
error: more than one device and emulator 问题解决
查看>>
Java基础:容器
查看>>
YUV摘要格式
查看>>
【方法2】删除Map中Value反复的记录,而且仅仅保留Key最小的那条记录
查看>>
C# CheckedListBox控件的使用方法
查看>>
【HDOJ】2007平方和与立方和
查看>>
js中const,var,let区别
查看>>
SharePoint自定义程序页面部署 不用重启IIS
查看>>
2014-11-30-2333-Java-数组
查看>>
Nginx 自动补全url地址补全最后的斜线
查看>>
【SQL Server 2008 安装全过程】
查看>>