这里是我的字符串如何在构建JSON字符串时转义特殊字符?
{
'user': {
'name': 'abc',
'fx': {
'message': {
'color': 'red'
},
'user': {
'color': 'blue'
}
}
},
'timestamp': '2013-10-04T08: 10: 41+0100',
'message': 'I'mABC..',
'nanotime': '19993363098581330'
}
这里的消息中包含单引号,这是一样的JSON使用的报价。我所做的是填充用户输入的字符串,如消息。所以,我需要避开那些破坏代码的特殊场景。但除了字符串替换,有没有什么办法让他们逃跑,但仍然允许HTML将其处理回正确的消息?
JSON只使用双引号,而不是单引号,请参阅http://www.json.org/ –
RFC 4627指出解析器必须能够解析符合的JSON(第4段),并且可能支持其他非JSON扩展。但是,第5段着重指出,所有生产者(发电机)必须仅生产符合100%标准的JSON。生成不需要转义的框架字符的JSON是一个特别糟糕的主意。请考虑用引号替换您的撇号。 https://www.ietf.org/rfc/rfc4627.txt – Luv2code
@ Luv2code虽然您所做的观点仍然正确,但请注意您引用了过时的规范。阅读RFC时,请始终使用https://tools.ietf.org/html版本,而不是文本版本。 HTML版本更易于阅读和链接到小节,最重要的是,在HTML版本的顶部是所有后续RFC更新或过时的列表。如果你去过https://tools.ietf.org/html/rfc4627,你会发现RFC 4627已经过时,并已被[RFC 7159](https://tools.ietf.org/html/rfc7159)。 –