2014-04-17 5 views
5

$ http 서비스에 대한 기본 헤더를 추가하려고합니다.이 값은 사용자 인증 후에 생성되는 액세스 토큰입니다.

module.config('$routeProvider', '$locationProvider', '$httpProvider'){ 
    $httpProvider.defaults.headers.post['XSRF-AUTH'] = 
     "some accessToken to be generated later"; 
} 

문제는 config() 블록 때 각도 부트 스트랩 핵심 요소를 적용한다. 동적으로 $ĥttpProvider을 변경할 수 있습니까?

답변

14

런타임시 $ httpProvider 대신 $ http 개체를 통해 기본 머리글을 변경할 수 있습니다.

$http.defaults.headers.post['XSRF-AUTH'] = "access token"; 

체크 아웃 자세한 내용 http://docs.angularjs.org/api/ng/service/$http#setting-http-headers의 $ HTTP API를 워드 프로세서 : 예를 들어, 당신은 config 블록의 다음과 같은 외부 작업을 수행 할 수 있습니다.

+0

실제로 작동했는데, 당신에게 명성이있었습니다. –

+0

이것은 좋지만 유일한 문제는 어디에 넣는가입니다. 모듈로드에 넣을 수도 있지만 함께로드 할 수도 있고로드하지 않을 수도있는 여러 모듈이있는 경우에는 어떻게해야합니까? angular.js가로드 된 후 페이지에이 코드를 삽입하면 "$ http is not defined"가 표시됩니다. –

+0

Sonic Soul, 내 질문을 이해할 수 있는지 확실하지 않지만, 의존성 주입을 사용할 수있는 어딘가에 넣어야합니다. $ http에 대한 참조 (예 : 컨트롤러, 실행, 서비스 등). 당신이 넣는 곳에 그것은 당신의 응용에 달려있을 것입니다. – Leo