2015-11-11 2 views
0

Я пытаюсь иметь тег на плакатах, чтобы ссылаться на детали фильма на основе идентификатора фильма, я читал их документы, но я не могу заставить конфигурацию api работать. Я продолжаю получать 404 в журнале консоли.пасека api movie db angular

вот как я называю api, это для создания URL-адресов изображений. Может ли кто-нибудь указать, как сделать этот бит правильно.

(function() { 
    'use strict'; 

    angular 
    .module('app.core') 
    .factory('posterService', posterService) 

    posterService.$inject = ['$q', '$http']; 

    function posterService($q, $http) { 

    var service = { 
     getPoster: _getPoster, 
    }; 

    return service; 

    function _getPoster(id) { 
     var params = { 
       id: id, 
       key: 'xxx' 
      } 

     return $http({ 
     method: 'GET', 
     url: 'https://api.themoviedb.org/3/movie/' + id + '/images/api_key='+key, 
     }); 
    } 

    } 

})(); 
+0

Можете ли вы привести мне пример фильма 'id'? Пытаясь возиться с API, чтобы проверить, что он работает, и мне нужен один, чтобы проверить конечную точку, на которую вы смотрите ... –

+0

ID: 206647 в api, который является идентификатором фильма «Привидение». Я продолжаю получать 404, но просто вывод фильмов в порядке, используя https://api.themoviedb.org/3/movie/popular?api_key=xxx ' – nCore

+0

Я на 90% уверен, что проблема - это конечная точка, которую вы используете. Если я правильно прочитаю ваш код, вышесказанное запросит 'https: //api.themoviedb.org/3/movie/id/images? Api_key = xxx & id = 206647', когда на самом деле URL должен быть' https: // api.themoviedb.org/3/movie/206647/images? api_key = xxx'. Я бы заменил строку URL на 'url: 'https: //api.themoviedb.org/3/movie/' + id + '/ images/api_key =' + yourKey' –

ответ

0

Вы проходите через ключ API как часть своего маршрута, передавая его как строку запроса. Ваш идентификатор и ключ также находятся в объекте params, поэтому вам нужно использовать params.id и params.key.

(function() { 
    'use strict'; 

    angular 
    .module('app.core') 
    .factory('posterService', posterService) 

    posterService.$inject = ['$q', '$http']; 

    function posterService($q, $http) { 

    var service = { 
     getPoster: _getPoster, 
    }; 

    return service; 

    function _getPoster(id) { 
     var params = { 
       id: id, 
       key: 'xxx' 
      } 

     return $http({ 
     method: 'GET', 
     url: 'https://api.themoviedb.org/3/movie/' + params.id + '/images?api_key=' + params.key, 
     }); 
    } 

    } 

})(); 
+0

Привет, просто сделал это, прежде чем я прочитал это сообщение, но все еще даю мне 401 Несанкционированный. – nCore