atTask的开发者论坛指导我。
如果用户已在该浏览器中登录,如何设置我的AngularJS控制器$http.get
以访问atTask的搜索API mydomain/attask/api/projects/search
?
我开始时:
var atTaskTA = angular.module('atTaskTA', []);
atTaskTA.config(function($httpProvider) {
$httpProvider.defaults.useXDomain = true;
delete $httpProvider.defaults.headers.common['X-Requested-With'];
});
atTaskTA.controller('atTaskTAController', ['$scope','$http', function($scope, $http){
$scope.data = "unknown";
$http.get("https://mydomain.com/attask/api/project/search").success(function(data){
console.log("Success", data);
$scope.data = data;
}).error(function() {
console.log("error");
});
}]);
我不熟悉设置标头以传递用于身份验证的Cookie信息,我认为这是我需要做的。
答案 0 :(得分:0)
请参阅$ http服务here的角度文档。特别要查看拦截器部分,您可以在传输之前向请求添加标头。
特别是你可以像这样修改请求对象:
$provide.factory('myHttpInterceptor', function($q, ...) {
request: function (config) {
config.headers["my-custom-header"] = myCustomHeaderValue;
return config || $q.when(config);
...
}
$httpProvider.interceptors.push('myHttpInterceptor');