使用AngularJS 1.2.16和angular-resource 1.2.16。
我有一个资源:
$resource('api/:variable/path',
{
variable:'@variableName'
});
当我使用
之类的东西时resourceIns.get({variable:'taco'});
生成的ajax调用正确替换:变量,我得到
api/taco/path
如果我发帖子
resourceIns.save({variable:'taco'});
生成的ajax调用看起来像
api/path
和'taco'被放入POST体内......
我很难找到其他人抱怨这个,也许这就是应该发生的事情?
编辑:我刚刚发现get使用'variable'并且save / POST在上面的例子中使用'variableName'。有人对此有解释吗?
这是一个显示情况的小提琴:fiddle
答案 0 :(得分:2)
我遇到了同样的问题或者以同样的方式出现的问题。我的资源也不尊重通过.post方法传入的参数。
我能够通过直接传递预期参数来使其工作。
使用$ resource:
angular.module('myApp')
.factory('ModuleProductProducts', function ($resource) {
return $resource('/module-api/product-products/:siteId/:id/:controller', {
id: '@id'
},
{
'updateMedia': {
method: 'POST',
url: 'module-api/product-products/:id/media/:mediaId',
// *** Here ***
params: {
id: '@id',
mediaId: '@mediaId'
}
// ************
}
});
});