transformRequest仅针对angularJS中的特定请求

时间:2014-06-11 09:00:15

标签: javascript json angularjs httprequest multipartform-data

我想通过角度的$资源传递multipart / formdata以发布图像。 我按照这里建立的神奇答案AngularJS: Upload files using $resource (solution)

但是此解决方案适用于我的模块中的所有请求。我希望它仅适用于一个或两个$资源。如果可能,我想为其他请求保留JSON。事实上,我使用嵌套属性,我想保留它。

有没有办法做到这一点?

由于

1 个答案:

答案 0 :(得分:3)

根据$request documentation,每个方法可以应用transformRequest();你必须重新定义这个方法。一些示例代码将是:

var MyResource = $resource("url", {
    myPost: {
        method: "POST",
        transformRequest: function(data) {
            // code from http://stackoverflow.com/questions/21115771/angularjs-upload-files-using-resource-solution
        }
    }
);

这是准系统设置,您可能需要进行一些调整。它将被用作(同样最简单的情况):

MyResource.myPost(formData); // formData contains properties and the image(s)