nginx+django httpresponse返回中文编码问题
来源:互联网 发布:网络拓扑图基本结构 编辑:程序博客网 时间:2024/05/22 07:56
问题产生
本机nginx做文件服务器(使用nginx-upload-module模块),使用django做应用服务器,当文件上传到nginx后,将处理后的文件信息反馈给django服务,django处理后回传response值。在返回response值时候出现中文编码问题
。
思路
(1)当遇到编码问题,首先想到了python的中文编码解决
(2)第一步不能解决后,把注意力回到nginx上
步骤
一.python 整体编码,设置编码为utf8
import sysreload(sys)sys.setdefaultencoding("utf-8")
二.python使用json的编码
尝试使用simplejson
,在其中设置ensure_ascii=False
,发现在django 1.7.8
中没有simplejson,而是直接是json。
from django.core.serializers.json import jsoncontent = json.dumps(<jsonData>, ensure_ascii=False)response = HttpResponse(content, content_type='application/json; charset=utf-8')return response
三.当修改django中的编码没有效果时,就考虑是否是nginx中的编码问题
server { listen 80; server_name localost; charset utf-8,gbk; }
其中设置编码为utf-8,gbk
。
最后发现是nginx的编码产生的问题,问题解决。
总结
在使用python时候,编码问题是会经常遇到的,这个需要注意;在实际的问题解决中,需要对每个过程都要考虑到,就像这次开发中使用到nginx+django+python +shell,每个流程都要小心。
参考资料:
1.http://blog.csdn.net/eengel/article/details/6198585
2.http://www.jb51.net/LINUXjishu/63475.html
3.关键字:nginx 中文编码
0 0
- nginx+django httpresponse返回中文编码问题
- Django-HttpResponse返回models对象
- Django使用HttpResponse返回图片并显示
- Django通过HttpResponse如何返回用户头像
- Django的中文编码问题
- django中文件下载(HttpResponse)
- Django-- HttpResponse
- 又遇 django 中文编码问题
- django发中文邮件的编码问题
- Django采用MySQL中文编码的问题
- nginx返回chunked编码的问题
- django函数HttpResponse
- 解决 django 查数据库时中文编码问题
- 搭建django遇到的中文编码问题:vim等
- HttpResponse返回models对象
- 解决PHP 编码中文返回时为null的问题
- PHP返回JSON数据及中文编码问题的解决方案
- django 模版编码问题
- 使用Hibernate框架来更新对象的注意事项
- Process 'command 'D:\Program Files\Java\jdk\bin\java. 解决办法
- Fresco 图片圆角实现原理及 Android 中图片圆角实现方法
- 第六届福建省大学生程序设计竞赛-重现赛,Problem J RunningMan
- iOS开发-https免证书验证
- nginx+django httpresponse返回中文编码问题
- 名字的漂亮度
- 任玉刚【Android开发艺术探索】读后笔记三
- Unity 的OCulus VR开发遇到的坑---OC版本差异
- 数据清洗小记(14):rtrim不被注意的用法
- Lustre文件系统分布式锁
- studio快捷键
- MS SQL数据库
- setsockopt调用IP_ADD_MEMBERSHIP出错errno:19 no such device