Angular $ resource method PUT получает 404, не найденных на сервере

0

Я создаю свой собственный метод PUT с использованием ресурса Angular $. Но когда я пытаюсь использовать равный URL REST в NodeJs, он говорит, что adreess, которую я отправил, не найден.

Вот моя фабрика:

(function (angular) 
{
angular.module('projekat.resource',['ngResource'])
.factory('ProjekatEntry', ["$resource", function($resource)
{
    var ProjEntry = $resource('/api/projekat/:_id',
    {_id:'@_id'},
    {
        obrisiKorisnika: 
        {
            method: 'PUT',
            url: 'api/projekat/:_id/:korId'
        }

    });
    return ProjEntry;

}]);
}(angular));

Вот мой угловой код:

$scope.obrisiUsera = function (korisnik, index) 
    {   
            $scope.projUser.$obrisiKorisnika( {'korId': korisnik._id});
            $scope.projUser.korisnici.splice(index, 1);
            $scope.korEntries.push(korisnik);
    }

И вот мой маршрутизатор:

.put('/:id/:korId', function(req, res, next) {
 console.log("dasdasasdasds");
 Korisnik.findOne({
"_id": req.params.korId
}, function(err, korisnik) {
if (err)
{
  console.log(err);
  next(err);
}
Korisnik.findByIdAndUpdate(korisnik._id, {$pull:{"projekti":req.params.id}}, function (err)
{
  if(err)
  {
    console.log(err);
    next(err);
  }
});
Projekat.findByIdAndUpdate(req.params.id, {$pull:{"korisnici":korisnik._id}}, function (err, entry) {
  if (err)
  {
    console.log(err);
    next(err);
  }
  res.json(entry);
   });
  });
})

Но я думаю, что серверная сторона не проблема, потому что она никогда не попадает на сервер, вот почему ошибка говорит:

PUT http://localhost: 8080/slickTask/api/projekat/5744b8802d28307020d8cc40/5744ba262d28307020d8cc4c 404 (не найдено)

Мои маршрутизаторы в порядке, все работает сейчас, POST, PUT, GET и т.д., Но когда я попытался использовать PUT-метод с другим параметром, он не ударил мой URL-адрес на стороне сервера.

Теги:
rest
angular-resource

1 ответ

0

В конечном итоге я нашел, в чем проблема. URL-адрес PUT в методе фабричной ProjekatEntry должен быть

url: '/api/projekat/: _ id/: korId'

с косой чертой в начале URL-адреса. Вот почему серверная сторона никогда не попадала.

Ещё вопросы

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