JSON Stringify Невозможно декодировать значение

0

У меня одна большая проблема.

Когда я отправляю запрос на отправку с угловым выражением и выполняю JSON.Stringify, он возвращает (не может декодировать значение). Я не знаю, как его решить

Изображение 174551

  • 0
    Я часто обнаруживал, что набрав "var tmp = <insertJsonStringHere>;" в консоль Chrome, чтобы быть полезным, так как он показывает мне, в чем проблема. В противном случае, есть онлайн проверка JSON thinga-Ma-Bobs
  • 0
    какие данные вы ожидали?
Показать ещё 1 комментарий

2 ответа

1
Лучший ответ

Вместо этого используйте метод angular.toJson(). Потому что некоторые внутренние обозначения используются угловыми.

https://docs.angularjs.org/api/ng/function/angular.toJson

Сериализует ввод в строку в формате JSON. Свойства с ведущими символами $$ будут удалены, так как угловые используют эту нотацию внутри.

0

Это не ошибка неправильного JSON, вы получаете эту ошибку, потому что используете POST вместе со следующим заголовком запроса: ("Тип контента", "application/x-www-form-urlencoded"). В этом случае вам придется использовать encodeURIComponent() вместе с JSON.stringify() в вашем объекте JSON, чтобы не получить вышеприведенную ошибку.

Если ваш заголовок запроса ("Content-Type", "application/json"), вам не нужно использовать encodeURIComponent(), достаточно просто использовать JSON.stringify().

Примечание. Вы также можете использовать GET и не получить ошибку, но GET имеет ограничения длины в вашем сообщении и обычно избегают при отправке JSON)

Ещё вопросы

Сообщество Overcoder
Наверх
Меню