gpt4 book ai didi

angularjs - 在矩形中为单个请求设置 header 和http参数

转载 作者:行者123 更新时间:2023-12-04 05:12:38 26 4
gpt4 key购买 nike

我正在尝试使用restangular进行文件上传后请求,我想在restangular中实现与以下相同的功能。
但是,我不确定如何仅为此特定请求设置内容类型和transformRequest。如果我正确理解,则setDefaultHeader会为所有后续请求设置它。还有其他方法吗?

myApp.service('$fileUpload', ['$http', function ($http) {
this.uploadFileToUrl = function(file, uploadUrl){
var filedata = new FormData();
filedata.append('file', file);
$http.post(uploadUrl, filedata, {
transformRequest: angular.identity,
headers: {'Content-Type': undefined}
})
.success(function(){
})
.error(function(){
});
}
}]);

最佳答案

您在这里有两种情况,用于创建新项目的POST或用于编辑项目的PUT:

// Save new Item
$scope.saveNew = function (item) {

var data = new FormData();
angular.forEach(item, function (fieldData, field) {
data.append(field, fieldData);
});

Restangular
.all('items')
.withHttpConfig({transformRequest: angular.identity})
.post(data, {}, {'Content-Type': undefined})
.then(function () {
// do on success
}, function () {
// do on failure
});
};

// Edit existing Item
$scope.save = function (item) {

var data = new FormData();
angular.forEach(item.plain(), function (fieldData, field) {
data.append(field, fieldData);
});

Restangular
.one('items', item._id)
.withHttpConfig({transformRequest: angular.identity})
.customPUT(data, undefined, {}, {'Content-Type': undefined})
.then(function () {
$location.path('sites');
});

关于angularjs - 在矩形中为单个请求设置 header 和http参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21292052/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com