【发布时间】:2014-09-23 13:31:48
【问题描述】:
我使用 RESTAngular 创建了一个服务,以简化与我的 REST API 的通信。假设我有一个对象Person。
这是我的服务:
myApp.factory('RESTService', [ 'Restangular', function (Restangular) {
var restAngular = Restangular.withConfig(function (Configurer) {
Configurer.setBaseUrl('/myAPI/');
});
var service = {};
service.Person= restAngular.service('person');
return service;
}]);
我可以成功:
获取Person的列表
RESTService.Person.getList().then(function (response) {
$scope.persons = response.plain();
})
获取一个Person
RESTService.Person.one(id).get().then(function (response) {
$scope.person = response.plain();
})
发布(更新)Person
RESTService.Person.post($scope.person).then(
function (successResponse) {
// success stuff
},
function (errorResponse) {
console.log("fail", errorResponse.status);
}
)
但我不能PUT(创建新记录)。现在假设我有一个表格,表格的数据保存在$scope.formData 中。我想做一个PUT 请求,将$scope.formData 中包含的对象传递给我的API。我该怎么做?
编辑:为了澄清,我的 API 是 REST,所以我这样做了
-
GET - /myAPI/person获取所有人员的列表 -
GET - /myAPI/person/123获取id=123的人 -
POST - /myAPI/person/123更新 id=123 的人 -
PUT - /myAPI/person在我的数据库中插入一个新人
【问题讨论】:
标签: angularjs rest put restangular