这是我的样本,我没有得到响应头,它返回undefined
我正在尝试获取自定义响应标头,如reponse.header [‘X-auth-token’],但它返回undefined
我正在尝试获取自定义响应标头,如reponse.header [‘X-auth-token’],但它返回undefined
我是棱角分明的新手,请分享你的想法
提前致谢
//我在这里尝试获取自定义响应标头(使用alert(response.headers);)
调节器
UIAppRoute.controller('test',['$scope','checkStatus',function($scope,checkStatus) { $scope.data = {}; checkStatus.query(function(response) { alert(response.headers); angular.forEach(response,function (item) { alert("resp2"+ item); }); $scope.data.resp = response; }); }]); // sending request to server service ------- UIAppResource.factory('checkStatus',function($resource){ var auth = Base64.encode("abcde:abcde"); return $resource(baseURL + "status",{},{ 'query': { method: 'GET',headers: { 'Accept':'application/json','Content-Type':'application/json','Authorization': 'Basic '+ auth,'Access-Control-Allow-Headers' : 'Origin,X-Requested-With,Content-Type,Accept' },isArray: false } } )
提前致谢
解决方法
response.headers是一个函数而不是一个map,所以你必须调用它而不是通过一个键来访问它.
response.headers(‘headerName’)应该为你提供相应的标题.
另见http://code.angularjs.org/1.2.16/docs/api/ng/service/$http
对于$resource,请参阅http://code.angularjs.org/1.2.16/docs/api/ngResource/service/$resource
var User = $resource('/user/:userId',{userId:'@id'}); User.get({userId:123},function(u,headers){ alert(headers('X-Internal-Auth-Token')) }); });