Javascript 表情符号破坏了我的JSON吗?
当使用jquery ajax表单(和多部分表单post)传输到服务器时,用户在HTMLJavascript 表情符号破坏了我的JSON吗?,javascript,jquery,ajax,json,emoji,Javascript,Jquery,Ajax,Json,Emoji,当使用jquery ajax表单(和多部分表单post)传输到服务器时,用户在HTML中输入emoji似乎会导致关闭的JSON}丢失 有没有人见过这样的事情发生,或者有其他的解释可能导致这种结果?(我们已经测试了数千个对象,这是第一个失败的对象) 编辑1:JSON的缩进是由JSON.stringify创建的,这意味着它在创建时是一个有效的JSON对象。 编辑2:这是一个JSON对象,是一个有争议的字符串化版本,看起来好像丢失可能会出现在通过Knox/NodeJS到达S3的过程中。 编辑3:输入的
中输入emoji似乎会导致关闭的JSON}
丢失
有没有人见过这样的事情发生,或者有其他的解释可能导致这种结果?(我们已经测试了数千个对象,这是第一个失败的对象)
编辑1:JSON的缩进是由JSON.stringify创建的,这意味着它在创建时是一个有效的JSON对象。
编辑2:这是一个JSON对象,是一个有争议的字符串化版本,看起来好像丢失可能会出现在通过Knox/NodeJS到达S3的过程中。
编辑3:输入的原始字符:
object
{ url: 'foobarurl',
uqid: 'foobaruqid',
message_id: '9005789165956076.4317795615643263',
author: 'guest',
created: 1410088784916,
message: '😜' }
stringified
{
"url": "foobarurl",
"uqid": "foobaruqid",
"message_id": "9005789165956076.4317795615643263",
"author": "guest",
"created": 1410088784916,
"message": "😜"
}
可能性很大。我建议在添加到JSON或任何其他类型的提交到服务器之前对任何用户输入字符串进行编码。您可以发布通过JSON.stringify传递的数据吗?这对您有帮助吗:?看起来这肯定是一个编码问题,唯一的答案是在呈现之前和之后对消息进行编码和解码。@DesignbyAdrian我不这么认为。JSON字符串化应该解决这个问题,在本例中,我怀疑问题出在其他地方。