2015-11-15 2 views
0

Я имею дело с небольшой проблемой и нуждаюсь в некоторой помощи.

У меня есть настройка API, работает отлично.

Теперь я хочу получить один объект, используя его ID. Я пробовал использовать $http, но не мог заставить его работать. Поэтому я переключился на $resource. Вот что я имею в своем служебном файле.

getPlatesInSelectedContainer: function() { 
    return $resource('/api/v1/platesincontainer/:id', {id: "@id" },{ 
     get: { cache: true, method: 'GET' } 
    }); 
}, 

И в контроллере я достигаю этой функции.

CleaningPlatesFactory.getPlatesInSelectedContainer({id : 1}, function(data){ 
    $scope.plates = data; 
    console.log(data); 
}) 

Но это не возвращает никаких результатов. Что я делаю неправильно?

UPDATE

Ранее я пытался $ HTTP, но получить это.

enter image description here

+0

Вы не принимает каких-либо параметров в вашей сервисной функции, но вы передаете идентификатор в контроллере. –

ответ

0

Я все еще получаю $ HTTP работать. Это так просто:

getPlatesInSelectedContainer: function(data) { 
    return $http.get('/api/v1/platesincontainer/' + data.id); 
} 

Вам необходимо принять объект данных в своей сервисной функции.

+0

Я пробовал этот метод. возвращая пустые данные. Пожалуйста, ознакомьтесь с кодом обновления. Я тестировал свой URL дюжину раз, и он возвращает данные. – user3641381

+0

Вам нужно принять объект данных в своей сервисной функции. –

+0

Работал! Большое спасибо! – user3641381

0

Внутри службы:

getPlatesInSelectedContainer: function(data) { 
return $resource('/api/v1/platesincontainer/:id', {id: data.id },{ 
    get: { cache: true, method: 'GET' } 
}); 
} 

Затем вызовите его следующим образом:

getPlatesInSelectedContainer({ id: 123 }) 
+0

Я попробовал. 'CleaningPlatesFactory.getPlatesInSelectedContainer ({id: 1}, function (data) { $ scope.plates = data; console.log (данные); }); 'но ничего не получается. Просто ничего не печатает – user3641381

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