Javascript 如何将ngResource配置为其put/post数据的命名空间?
我定义了以下服务来处理我的用户资源。服务器返回带名称空间的JSON数据,并期望返回带名称空间的JSON数据。不幸的是,虽然我能够将其配置为读取数据,但它拒绝命名输出数据的名称空间。我最接近的是writeUserKey函数,这只会导致服务器抱怨。我认为它覆盖了JSON编码,导致angular只发出[object object],而不是JSON字符串。我怎样才能让它工作 代码: 原始输出:{key:value,key2:value2,key2:value2} 当前输出:[对象]Javascript 如何将ngResource配置为其put/post数据的命名空间?,javascript,angularjs,ngresource,Javascript,Angularjs,Ngresource,我定义了以下服务来处理我的用户资源。服务器返回带名称空间的JSON数据,并期望返回带名称空间的JSON数据。不幸的是,虽然我能够将其配置为读取数据,但它拒绝命名输出数据的名称空间。我最接近的是writeUserKey函数,这只会导致服务器抱怨。我认为它覆盖了JSON编码,导致angular只发出[object object],而不是JSON字符串。我怎样才能让它工作 代码: 原始输出:{key:value,key2:value2,key2:value2} 当前输出:[对象] 所需的输出:{use
所需的输出:{user:{key:value,key2:value2,key2:value2}}有时会有帮助。在抓起一些食物并在hte项目的其他部分闲逛之后,我意识到解决方案是显而易见的。如果我覆盖默认序列化,我只需要重新生成一个简单的.toJson调用 将writeUserKey更改为:
var writeUserKey = function(data, headersGetter){
return angular.toJson({ user: data});
};
这似乎比开箱即用的简单方法要复杂得多,但它确实有效。如果有更好的方法来处理名称空间数据,请告诉我
var writeUserKey = function(data, headersGetter){
return angular.toJson({ user: data});
};