8

如果我有一个 POST 参数

d={"data": "<span>hello</span>"}

这是一个 JSON 字符串,它工作正常,并且 request.POST.get('d') 包含完整的字符串。但是,如果我将其更改为

d = {"data": "<span>hel;lo</span>"}
print (request.POST.get('d')) #prints '{"data": "<span>hel'

由于某种原因,分号后的任何内容都被切断了。我可以确认这不是 Javascript 这样做的,因为我曾经使用完全相同的 javascript 代码发布到能够检索数据的 PHP API。自从转向 Python 和 webapp2 以来,我遇到了这个问题。

4

2 回答 2

3

运行你的字符串通过encodeURIComponent(). 然后对截断的组件进行编码。之后在检索需要解码的数据时。

于 2012-11-15T09:51:05.957 回答
1

这取决于Content-Type请求的类型。如果内容类型是,application/x-www-form-urlencoded那么您需要对参数进行 urlencode。有关详细说明,请参阅第一个答案:application/x-www-form-urlencoded 或 multipart/form-data?

于 2012-11-15T09:50:31.293 回答