字符串中无效的JSON转义序列


Invalid JSON Escape Sequence in String

我正在与一个MySQL数据库编码多边形谷歌地图。当我尝试返回json查询时,jsonlint抱怨…我不知道为什么它会抱怨,我确实尝试在latlon中转义"}",但仍然得到相同的错误。

<>之前解析第20行错误:…:"latlon} ciuF |的| pNcUr@d@es@-----------------------^期待"字符串","数量","空","真正的"、"假 ', '{', '['之前

我的json是:

<>之前{"地图":({"group_id":"0","user_id":"113","group_name":","注意":","field_id":","field_name": "West牧场","field_notes":",:"date_created 12/31/2012","亩":"}],"多边形":({"polygon_id":","field_id":"1","亩":"92",:"latlon} ciuF |的| E pNcUr@d@es@fIHXaNtCn@UxCjMlApAfFuBpI} ' ChJdEl@xAtE"}]}

问题是C前面有一个斜杠,这不是一个有效的转义序列。

"}ciuF|a|pNcUr@d@es@fIHXaNtCn@ uxcjmlapaffubpi}E 'C hJdEl@xAtE"

JSON.parse('"''C"');

这将给你一个语法错误,因为它试图解析字符串'C。如果你想要一个文字'在你的属性值中,你需要转义它。

"latlon": "}ciuF|a|pNcUr@d@es@fIHXaNtCn@UxCjMlApAfFuBpI}E''ChJdEl@xAtE"

官方语法的相关部分:

string
    ""
    " chars "
chars
    char
    char chars
char
    any-Unicode-character-
        except-"-or-'-or-
        control-character
    '"
    ''
    '/
    'b
    'f
    'n
    'r
    't
    'u four-hex-digits