无论何时我在cf9中使用serializeJSON,它返回的JSON都会以'//'作为前缀。这非常令人沮丧,因为即使coldfusion也会尝试将其解码为json。例如:Coldfusion 9 serializeJSON()
var a = { stuff = 'some content' };
a = serializejSON(a); // the content of a is now: //{"STUFF":"some content"}
b = deserializeJSON(a);
上面的代码会抛出一个错误,提示“无法解析位置1上的字符:/'。为了使这项工作,我必须做一个字符串替换和换出''为'/'。
我似乎无法找到关于此问题的任何信息。这是否是某种我不明白的功能,并且按照预期工作?我是否缺少某种修复此问题的设置?
您可以在服务器设置>设置下更改设置CF管理员。禁用“Prefix serialized JSON with”字段 –
@MattBusche您应该将您的评论提升为答案。这绝对是''//来自哪里的。但请记住,建议禁用该设置会带来潜在的安全风险。只是为了让OP和其他人知道。 –
@MattBusche - 你可否请更新你的答案,提及禁用该功能的[安全隐含](http://stackoverflow.com/questions/15501123/coldfusion-10-returnformat-json-adding-characters)?如果下一个阅读它的人不知道它并在不理解分支的情况下应用它。 – Leigh