В любое время, когда я использую serializeJSON в cf9, возвращаемый 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 Admin в разделе «Настройки сервера»> «Настройки». Отключите поле «Префикс сериализованного JSON с» –
@MattBusche. Вы должны отправить свой комментарий к ответу. Это определенно, откуда происходит '//'. Но имейте в виду, что рекомендация отключить эту настройку представляет потенциальный риск для безопасности. Просто, чтобы ОП и другие знали. –
@MattBusche - Не могли бы вы обновить свой ответ, чтобы упомянуть о [последствиях безопасности] (http://stackoverflow.com/questions/15501123/coldfusion-10-returnformat-json-adding-characters) отключения этой функции? В случае, если следующий парень, читающий его, не знает об этом и применяет его, не понимая последствий. – Leigh