如何使djangorestframework支持中文?

时间:2015-11-30 10:24:38

标签: android python django django-rest-framework

在我的Android设备上,我用英语向我的服务器发出一个简单的RESTful POST请求(" hello world")。这是有效的,然后一个简单的GET请求可以返回" hello world"作为回应。 但是当我用中文发帖时,服务器会收到????和GET请求返回??? 我在Android设备上输入中文文本。

我需要做些什么来启用djangorestframework才能使用中文?

谢谢!

在django settings.py中我已启用:

LANGUAGE_CODE = 'en-us'

LOCALES = (
    ('en', u'English'),
    ('zh-tw', u'Mandarin (Taiwan)'),
    ('zh-cn', u'Mandarin (China)'),
)

2 个答案:

答案 0 :(得分:1)

转换仅适用于可浏览的API,可能适用于错误响应消息。

您可能需要仔细检查客户端编码。 conversion error between JSON for Chinese characters对此有一个很好的解释。

答案 1 :(得分:0)

 jsonEntity.toString()),"UTF-8") 

许多人正在使用asynchttpclient来制作网络请求。因此,只要您向服务器发布内容,您就会使用StringEntity。因此,请确保按上述方式指定编码。事情很好。不需要对Django设置或Djangorestframework做任何事情。