我认为这将取决于你如何调用更新功能。如果您阅读角度主页的教程,在“连接后端”下,mongolab.js提供了一个'Project'工厂。逐字复制:
angular.module('mongolab', ['ngResource']).
factory('Project', function($resource) {
var Project = $resource('https://api.mongolab.com/api/1/databases' +
'/angularjs/collections/projects/:id',
{ apiKey: '4f847ad3e4b08a2eed5f3b54' }, {
update: { method: 'PUT' }
}
);
Project.prototype.update = function(cb) {
return Project.update({id: this._id.$oid},
angular.extend({}, this, {_id:undefined}), cb);
};
Project.prototype.destroy = function(cb) {
return Project.remove({id: this._id.$oid}, cb);
};
return Project;
});
的用法是你第一次拿到项目的一个实例:
project = Project.get({id:1});
那么一些更改后做一个更新:
project.update(someFunction);
在你的情况,你可以将更新更改为始终添加所需的数据:
Product.prototype.update = function(cb) {
return Product.update({},
angular.extend({}, this, {someDataKey: someDataValue}), cb);
};
否则,你可以最有可能把键/值对在PARAMS:
update: {method : "POST", params:{someDataKey: someDataValue}}
它将与在URL中的键/值对张贴,但大多数应用服务器现在将引发对进入无论如何参数对象。
你在这些数据中发送了什么?如果你发送一个令牌,你应该发送它在标题,不一定在postData ... – inf3rno