AngularJS Resource – PUT方法没有得到id

前端之家收集整理的这篇文章主要介绍了AngularJS Resource – PUT方法没有得到id前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个工厂,它返回我的文章模型的$资源:
angular.module('ADI.Resources').factory("Articles",['$resource',function($resource) {
    return $resource('/api/v1/article/:articleId',{
        articleId: '@_id',_shop: window.user._shop
    },{
        update: {
            method: 'PUT'
        }
    });
}]);

GET,POST和DELETE运行良好,但不是更新(PUT).这是我使用的代码

Articles.update({articleId: '300000000000000000000001'},function(article){
    console.log(article);
});

它正在提出这个要求:

PUT http://localhost:3000/api/v1/article?_shop=100000000000000000000001

代替:

PUT http://localhost:3000/api/v1/article/300000000000000000000001?_shop=100000000000000000000001

知道为什么在执行更新时没有填充:articleId参数?谢谢!

正如评论中提到的F​​als,articleId参数位于请求内容中.所以我做了一个小技巧,让它也在URI上.
angular.module('ADI.Resources').factory("Articles",{
        update: {
            method: 'PUT',params: {
                articleId: "@articleId"
            }
        }
    });
}]);

猜你在找的Angularjs相关文章