2012-04-13 1 views
1

У меня есть JSON, который идеально подходит при тестировании с jsonlint, но дает ошибку Invalid character, когда я пытаюсь разобрать его на объект. Я посмотрел на строку JSON, и все выглядит нормально. Как увидеть забавные персонажи, которые могут быть скрыты?SCRIPT1014: Неверный символ

здесь ссылка js fiddle. http://jsfiddle.net/UexKp/

+3

Пожалуйста, отправьте сообщение JSON. –

ответ

0

Вы можете использовать прокси-сервер отладки, такой как Fiddler (http://www.fiddler2.com/fiddler2/), а затем проверить необработанные данные JSON-запроса, чтобы узнать, есть ли в ответе какие-то нежелательные символы.

0

Ничего плохого в формате JSON: http://jsfiddle.net/UexKp/2/

{ и } не не рассматриваются в качестве литерала объекта, когда они могут рассматриваться как блок, так что наличие присваивание переменной, например, фиксирует его. Вы также можете обернуть его ( и ), как показано на скрипку/1

+0

Я думаю, что он получает JSON, а не JS-Object. И это всего лишь строка, которая анализируется в JS-объект с такими инструментами, как JSON.parse() –

+0

@MichaelSandino. Затем он должен вставлять все, что он получает ... С ним работать нечем, но jsfiddle, который отлично работает после делая его выражением. – Esailija

1

Это не может быть проблемой Вы столкнулись точно, но я установил подобную ошибку в JSON возвращается мои AJAX звонки (в Internet Explorer только, конечно), указав, что тип ответа должен интерпретироваться как json, а не текст. Поскольку я использую jQuery, это влечет за собой установку параметра dataType в параметрах ajax на «text json», который соответствующим образом преобразует ответ из текста (как видит IE) в JSON.

Если это не сработает для вас, вы также можете попробовать изменить тип ответа, исходящий от сервера, при условии, что у вас есть доступ к нему, чтобы он правильно сообщал, что ответ возвращается JSON, а не текст.

 Смежные вопросы

  • Нет связанных вопросов^_^