2013-10-18 2 views
5

나는 angularjs를 처음 사용합니다. 승인이 필요한 API 요청을하려고합니다. 요청의 헤더에 포함 시켰지만 여전히 작동하지 않습니다. 내 액세스 토큰이 작동하고 있다고 확신합니다. 어떤 충고?AngularJS 요청에 헤더를 포함하는 방법

$scope.fetch = function() { 
    $scope.code = null; 
    $scope.response = null; 
    $http({ 
     method: $scope.method, 
     url: $scope.url, 
     cache: $templateCache, 
     headers: { 
      Authorization: "access token" 
     } 
    }). 
    success(function(data, status) { 
     $scope.status = status; 
     $scope.data = data; 
    }). 
    error(function(data, status) { 
     $scope.data = data || "Request failed"; 
     $scope.status = status; 
    }); 
}; 
+0

액세스 토큰 앞에 "기본"을 추가하십시오. 여기에이 중 하나가 중복 될 수 있습니다. http://stackoverflow.com/questions/11876777/angularjs-set-http-header-for-one-request –

답변

5

당신은 그것은 모든 POST에 위의 헤더를 추가합니다

$http.defaults.headers.post["Content-Type"] = "application/x-www-form-urlencoded;charset=utf-8"; 

다음 사용할 수는 앱에서 확인 전화. 모든 메소드에 공통 인 헤더를 추가하려면 다음을 시도하십시오.

$http.defaults.headers.common['Authorization'] = "Bearer " + user.oauthInfo.access_token; 
+0

코드 줄을 어디에 넣으시겠습니까? – Squadrons

+0

Anywhere ... 코드의 구성 부분에이 줄을 넣는 가장 좋은 방법은 헤더를 설정하기 위해 요청 인터셉터를 만들 수도 있습니다. – vs4vijay

0

요청에 대한 브라우저의 네트워크 요청 로그에 헤더가 표시되어 있습니까?

그렇다면 예상되는 형식입니까? 일반적으로 "Authorization"헤더에는 "Basic"(위의 주석에서 DevPat이 언급 됨) 또는 "Bearer"와 같은 내용이 있습니다. 여기에 속한 것은 요청을받는 백엔드 시스템에 따라 다릅니다. 예상 헤더의

예 :

Authorization: Bearer access_token 
Authorization: Basic access_token 
관련 문제