Angularjs $资源POST发送超过我想要的

时间:2014-07-02 12:19:58

标签: spring angularjs

这是我的工厂

    .factory('UsersFactory', ['$resource', function ($resource) {
    return $resource('http://127.0.0.1:8080/user?deep=:deep', {}, {
        query: { method: 'GET', params: {deep: '@deep'}, isArray: true },
        create: { method: 'POST', url: 'http://127.0.0.1:8080/user/create' },
        delete: { method: 'DELETE', url: 'http://127.0.0.1:8080/user/delete/:pk', params: { pk: '@pk' } },
        save: {
            method: 'POST', url: 'http://127.0.0.1:8080/user/update',
            transformRequest: function (data, headersGetter) {
                return '';
            },
            transformResponse: function (data, headersGetter) {
                return '';
            },
            isArray: false
        }
    });
}])

在我的控制器中我有这个方法

UsersFactory.save(user);

我的问题是资源发布方法正在包装我的用户数据

{
"data": "",
"status": 0,
"config": {
    "method": "POST",
    "url": "http://127.0.0.1:8080/user/update",
    "data": {
        "pk": 4,
        "created": 1404293276408,
        "lastModified": 1404293276408,
        "dataVersion": 1,
        "username": "helm",
        "firstName": "Matthew",
        "lastName": "Hel",
        "email": "",
        "mobile": "",
        "roles": [
            {
                "created": "",
                "dataVersion": "",
                "description": "",
                "fullName": "Super User",
                "lastModified": "",
                "pk": "",
                "shortName": "SU",
                "type": "su"
            },
            {
                "created": "",
                "dataVersion": "",
                "description": "",
                "fullName": "Administrator",
                "lastModified": "",
                "pk": "",
                "shortName": "Admin",
                "type": "admin"
            }
        ],
        "roleTypes": [
            "su",
            "admin"
        ]
    },
    "headers": {
        "Accept": "application/json, text/plain, */*",
        "Content-Type": "application/json;charset=utf-8"
    }
},
"statusText": ""

}

我的服务器无法处理此结构。如何仅发送正文,即用户对象?或者我需要更改我的Spring bean吗?或者我是否需要在Angularjs上进行一些配置?

提前致谢

1 个答案:

答案 0 :(得分:0)

首先,将transformRequest/Response指定为返回''的函数可以完成整个目的。

除此之外, seems to work fine

也许错误发生在其他地方......