無論何時我在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