RESTAngular - УДАЛИТЬ, не работает должным образом

Если я не ошибаюсь в сервисах RESTful, чтобы удалить запись, вам нужно сделать это:

Delete a product: DELETE /api/product/id (ссылка)

Но в RESTAngular, когда я делаю, например

product.remove();

Запрос DELETE отправляется /api/product с полным объектом продукта в теле запроса. Это не то, что я хочу!

Вот мой код:

myApp.factory('RESTService', [ 'Restangular', function (Restangular) {
    var restAngular = Restangular.withConfig(function (Configurer) {
        Configurer.setBaseUrl('/myAPI/');
    });
    var service = {};
    service.Product= restAngular.service('product');
    return service;
}]);

ПОЛУЧИТЕ один продукт

RESTService.Product.one(id).get().then(function (response) {
    $scope.product= response;
})

УДАЛИТЬ продукт

$scope.product.remove();

Я хочу, когда я делаю product.remove(), чтобы отправить запрос DELETE на /myAPI/product/id. Как я могу это сделать?


person Christos Baziotis    schedule 19.08.2014    source источник


Ответы (1)


Вы можете удалить запись с помощью RESTFul($http) Сервиса следующим образом

$http.delete('/myAPI/product' + id, {params: {id: id}});
person Archana    schedule 19.08.2014
comment
почему два ответа, вы можете обновить его предыдущим - person Nidhish Krishnan; 19.08.2014
comment
@Nidhishkrishnan - я новичок в stackoverflow, у меня есть некоторые трудности с созданием ссылок, когда я публикую ответ, не могли бы вы мне помочь? - person Archana; 20.08.2014
comment
какие ссылки, вы имеете в виду внешние URL-ссылки, такие как jsfiddle, jsbin и т. д. - person Nidhish Krishnan; 20.08.2014
comment
@Archana взгляните на этот i.stack.imgur.com/HoPUs.png , также создайте учетную запись в jsfiddle для получения и публикации URL-адреса jsfiddle, для jsbin и plunker нет необходимости в какой-либо учетной записи пользователя - person Nidhish Krishnan; 20.08.2014