一尘不染

配置angularjs模块发送补丁请求

angularjs

我对AngularJs完全陌生。我正在尝试使用Angularjs向Django Deliciouspie API发送PATCH请求。我的代码是

var module = angular.module('myApp', []);

module.config(function ($httpProvider) {
});

function MyController($scope,$http)
{
$scope.patchCall=function(){
    $http({
    url: "/patchrequest/",
    data:data,
    method: "PATCH",
})
.success(function(data){
    console.log("SUCCESS");
    $scope.list = data.items;
}).error(function() {
    console.log("FAIL");
});
}
}

但是,当我尝试使用此代码发送请求时,出现了一个错误消息,即http.patch不是函数。告诉我如何配置ng-
app和服务以使用AngularJs发送PATCH请求。我读过PATCH请求在$ resource中可用,所以我也对$
resource感到厌倦。但是找到相同的结果。请指导我如何从头开始配置应用程序以发送CRUD请求,尤其是PATCH请求


阅读 247

收藏
2020-07-04

共1个答案

一尘不染

根据所显示的代码,您的错误没有任何意义,但是添加PATCH到AngularJS中的一个常见问题是它没有该HTTP方法的默认Content-
Type标头(application/json;charset=utf-8用于PUT,POST和DELETE)
)。这是$httpProvider添加补丁支持的配置:

module.config(['$httpProvider', function($httpProvider) {
    $httpProvider.defaults.headers.patch = {
        'Content-Type': 'application/json;charset=utf-8'
    }
}])
2020-07-04