Форум сайта python.su
на джаваскрипте переменная с произвольными символами кодируется через escape и передается на сервер.
Как получить ее и отправить обратно на страничку?
Кодировка UTF-8 везде.
У меня получаются такие вещи:
Ввожу: 123dfва, оно подвергается escape
query: message=123df%D0%B2%D0%B0
Далее использую: dict(cgi.parse_qsl(query))
print выдает: {“message”: “123df\u0432\u0430”}
На странице: 123df%u0432%u0430
Как сделать, чтобы на страницу приходило нормальное 123dfва?
Офлайн
для кодирования URL нужно использовать encodeURIComponent().
Причем ключ и значение кодируешь отдельно, а только затем склеиваешь в строку key=value
Офлайн
query: message=123df%D0%B2%D0%B0
Не изменится.
Офлайн
# coding: utf-8
import cgi
s = 'message=123df%D0%B2%D0%B0'
print cgi.parse_qsl(s)[0][1]
123dfва
Офлайн
Ах ты ж блин… ночью писал и эскейпинг случайно применил не к той строке =\
Сразу 2 ошибки исправились.
Спасибо за помощь.
Офлайн