我卡在我的角度应用程序中。我在$ http.put请求中出现错误,因为“无法读取属性”协议“undefined”。我已经看到与此错误相关的其他帖子。根据这些帖子,这是由于请求中存在无效的头部。但在我的情况下,标题是有效的,因为我的其他请求具有相同的标题正在工作。
我的控制器代码如下:
angular.module('myWebApp').controller('updateAccountController',
function ($scope, $rootScope, $location,authFactory) {
$scope.updateAccount = function() {
authFactory
.updateAccount($scope.firstName, $scope.lastName, $scope.country)
.success(function (data) {});
};
}
);
我的服务如下:
var BASE = 'https://abc.com/';
angular.module('myWebApp').factory('authFactory',
function ($location, $http) {
var factory = {};
factory.updateAccount = function (firstName, lastName, country) {
var config = {
headers: {
'Authorization': 'Basic ' + sessionStorage.getItem('token')
}
};
var userData = '{"type":"AccountDetails","firstName":"' + firstName +
'","lastName":"' + lastName +
'","country":"' + country + '"}';
return $http.put(BASE + 'account', config, userData);
};
return factory;
}
);
请帮我解决这个问题。
请考虑在提高可读性问题重新格式化代码。谢谢! – awendt
@awsndt:我没有:) – gkalpak