Несоответствие кодировки httprequest - PullRequest
0 голосов
/ 20 августа 2009

Я использую Google Gears Worker для отправки POST httprequest
(используя var request = google.gears.factory.create('beta.httprequest');)

с параметром, содержащим строку
"bford%20%24%23%26!%3F%40%20%E5%BE%B3%E5%8A%9B%E5%9F%BA%E5%BD%A6"

но запрос Django HttpRequest получает его как
"bford $#&!?@ å¾³å\u008a\u009bå\u009fºå½¦"

Как указать одной или другой стороне в транзакции, чтобы она не была переведена?

1 Ответ

0 голосов
/ 20 августа 2009

Проверьте настройки HttpRequest.encoding и DEFAULT_CHARSET. Судя по закодированному значению, это должно быть UTF-8 (что обычно является правильным).

Вы можете получить значение «непереведенное» (с% s все еще включено), посмотрев на входной поток (для POST) или окружение QUERY_STRING (для GET) и декодировав его вручную, но это будет Лучше исправить действительно некорректное декодирование строки в Unicode в Django.

Насколько я понимаю, Django 1.0 должен по умолчанию использовать UTF-8, поэтому я не уверен, почему это не так.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...