如何使用Angular $resource
的有效负载主体执行普通POST
。现在,当我/api/example?name=JoeSmith&is_whatever=false
时,它会发布到ENDPOINT: `/api/example`
BODY: {
"name": "Joe Smith",
"is_whatever": false
}
,而不是张贴在正文中。
假设我有以下内容:
angular.module('example')
.factory('APIService', ['$resource',
function($resource) {
return $resource('/api/example', {}, {
create: {
method: 'POST',
}
});
}]);
API服务
// body i need to POST
var payload = {
name: 'Joe Smith',
is_whatever: false
};
APIService.create(payload).$promise.then(function(res){
// doesnt work
});
使用示例
{{1}}
答案 0 :(得分:3)
尝试将data参数传递给资源的action方法,如下所示:
angular.module('example', ['ngResource'])
.run(function(APIService) {
var payload = {
name: 'Joe Smith',
is_whatever: false
};
APIService.save({}, payload)
})
.factory('APIService', function($resource) {
return $resource('/api/example');
});