javascript – 具有两个参数的Angular $resource端点
作者:互联网
我有一个使用服务来处理$resource的设置,如下所示:
服务
factory('EventSlot', ['$resource', function ($resource){
return $resource('/api/events/:id/slots/:slotId', {id: "@Id", slotId: "@slotId"},
{
signup: {
method: 'PUT'
}
});
}]);
调用函数
EventSlot.signup({id: $scope.id, slotId: $scope.signUpSlot.id}, $scope.signUpSlot);
但是,当PUT调用实际通过时,它会进入端点:
/ api / events / 123 / slots /其中123是适当的@Id但是@slotId永远不会附加.所以,我想要的是/ api / events / 123 / slots / 456,但这种情况从未发生过.
解决方法:
我认为逻辑按预期工作,并且它无法工作的可能原因是因为$scope.signUpSlot.id可能未定义.
我创建了一个演示,您可以打开浏览器控制台,看到调用实际上是对正确的URL:
PUT http://fiddle.jshell.net/api/events/123/slots/456 404 (NOT FOUND)
标签:javascript,angularjs,angularjs-resource,angular-services 来源: https://codeday.me/bug/20190624/1283114.html