从 Chrome 扩展,我尝试发送一个 POST 请求:
var = encodeURIComponent(somevariable);
var parameters = "var=" + var;
mypostrequest.open("POST", "django/page/", true);
mypostrequest.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
mypostrequest.send(parameters);
当 in 时somevariable
,有一些 UTF-chars,它会中断
“ascii”编解码器无法解码位置 14 中的字节 0xc4:序数不在范围内(128)
在 Django 中,我有:
some_var = form.cleaned_data['var'].replace('\n','')
结果是错误的,因为some_var
包含错误的字符:
some_var = u"blah blah blah z\u0142o\u017a"
当然,应该是u"blah blah blah złoź"
,但我真的不知道应该在哪里以及如何更改编码。
关闭后更新:
这个问题不是重复的 - 问题不在消息中。我在谷歌上搜索的次数比你想象的要多。
最重要的事情(我不明白)是
u"ł" 和 u"\u0142" 和 "\u0142"
所有这些意味着几乎相同,但并不相同。