事实上,标题就是这么说的。但是,我会详细介绍:
我从我的JS脚本向服务器发送一个JSON字符串,反之亦然。 JSON包含用户写入文本字段的内容,但我知道有些用户迟早会以这种方式破解JSON数组,所以我决定使用encodeURIComponent()
对其进行编码。
但是我看到,当我尝试编码花括号时,它们根本就没有编码。这会成为一个问题吗?
更确切地说,我担心如果有人写道:} , {
,JSON就会中断。这不应该发生,因为所有这些都在这样的双引号中:"} , {"
,如果用户编写双引号或单引号,它们将被编码,据我所知,JSON应该只处理所有这些很好,但我不完全确定。
那么,我应该编码这些括号吗?
(另一件事是数据是在预编译语句中插入MySQL的,所以这应该不是问题,或者我错了?)
答案 0 :(得分:3)
来自JSON specifications的快速报价:
string 是零个或多个Unicode字符的序列,用双引号括起来,使用反斜杠转义。
正如您在上面引用的段落后面的图像中看到的,除"
,\
和控制字符之外的任何Unicode字符都表示为-is;不需要逃脱。
答案 1 :(得分:2)
""
中
所以会像
一样{"postcontent": "Shouldnt { } be escaped"}