2009-08-20 6 views
0

J'utilise un travailleur Google Gears pour un submt POST HttpRequest
(en utilisant var request = google.gears.factory.create('beta.httprequest');)

avec un paramètre contenant la chaîne
"bford%20%24%23%26!%3F%40%20%E5%BE%B3%E5%8A%9B%E5%9F%BA%E5%BD%A6"

mais Django HttpRequest est reçu comme
"bford $#&[email protected] å¾³å\u008a\u009bå\u009fºå½¦"HTTPRequest non-concordance codant

Comment puis-je spécifier à l'une ou l'autre des parties de la transaction de ne pas la traduire?

Répondre

0

Vérifiez les paramètres HttpRequest.encoding et DEFAULT_CHARSET. A en juger par la valeur codée, cela devrait être UTF-8 (ce qui est généralement la bonne chose).

Vous peut obtenir la valeur (avec% s encore) 'non traduite en regardant le flux d'entrée (POST) ou environ QUERY_STRING (GET) et le décodage manuellement, mais il serait préférable de fixer Le décodage incorrect de chaîne à unicode de Django vraiment. Si je comprends bien, Django 1.0 devrait utiliser par défaut UTF-8, donc je ne sais pas pourquoi ce n'est pas dans votre cas.

Questions connexes