Задать вопрос
MadMed677
@MadMed677
Студент СПбГУ, бакалавр, FrontEnd разработчик

Почему AngularJS $http.jsonp в Yandex Market API возвращает error, хотя данные пришли?

Задача состоит в том, чтобы подгрузить данные из Yandex Market API.

На AngularJS, с помощью $http.jsonp делаю запрос на их ресурс, в итоге $promise возвращает ошибку (error), а в консоль выводится

Uncaught SyntaxError: Unexpected token :

Хотя в network показывает, что данные есть и их можно просмотреть, и в заголовках приходит 200.

Запросы делаю через сервис icsystem.
Код контроллера
angular.module('YandexMarketApp')

    .controller('SettingsCtrl', function($scope, $http) {

        var url = 'http://market.icsystem.ru/v1/model/8454852.json?callback=JSON_CALLBACK';

            $scope.save = function() {
                $http.jsonp(url)
                    .success( function(data, status, headers) {
                        console.log('success');
                        console.log(data);
                    })
                    .error( function(data, status, headers) {
                        console.log('error');
                        console.log(data);
                    });
                };
            })
  • Вопрос задан
  • 2811 просмотров
Подписаться 2 Оценить Комментировать
Решения вопроса 1
@Levka9
Потому что формат возращаемых данных не чистый json, а возможно обёрнутый в стринг.

Тоесть чтобы получить json с того что пришло нужно делать так:

angular.fromJson(angular.fromJson(data));

jsonp это не умеет (

вчера с этим намучался подключая ebay
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы