AngularJS-未对$resource调用transformRequest
我正在向AngularJS资源添加一对操作,但是当我调用该操作时,我的transformRequest函数没有被调用:AngularJS-未对$resource调用transformRequest,angularjs,Angularjs,我正在向AngularJS资源添加一对操作,但是当我调用该操作时,我的transformRequest函数没有被调用: var _resource = $resource('api/NewItem/:id', { id: '@id' }, { create: { method: 'POST', transformRequest: function (data, headersGetter) {
var _resource = $resource('api/NewItem/:id',
{ id: '@id' },
{
create: {
method: 'POST',
transformRequest: function (data, headersGetter) {
var result = JSON.stringify(data.productIntro);
return result;
}
},
update: {
method: 'PUT',
transformRequest: function (data, headersGetter) {
var result = JSON.stringify(data.productIntro);
return result;
}
}
});
如果我在应用程序上全局添加该功能,它将起作用:
var newItemApp = angular.module('newItemApp', ['ngResource'])
.config(function ($httpProvider) {
$httpProvider.defaults.transformRequest = function(data)
{
if (data === undefined) {
return data;
}
var result = JSON.stringify(data.productIntro);
return result;
};
});
我需要做的是从任何POST或PUT操作中删除根元素,因为当json对象具有命名根时,Web Api中的默认模型绑定不会绑定该对象。
transformRequest
自那时起受支持。如果您使用早期版本,您需要将其添加到$httpProvider
是的-我以为我们的构建中有最新版本,但我错了。谢谢我遇到了同样的问题-我正在呼叫。节省我的资源,但将transformRequest设置为“创建”。