> 웹 프론트엔드 > JS 튜토리얼 > HTTP 헤더 설정을 위해 백엔드 렌더링 매개변수를 Angular 2 Bootstrap에 전달하는 방법은 무엇입니까?

HTTP 헤더 설정을 위해 백엔드 렌더링 매개변수를 Angular 2 Bootstrap에 전달하는 방법은 무엇입니까?

Mary-Kate Olsen
풀어 주다: 2024-12-06 09:01:10
원래의
188명이 탐색했습니다.

How to Pass Backend-Rendered Parameters to Angular 2 Bootstrap for Setting HTTP Headers?

종속성 주입을 사용하는 백엔드의 Angular2 부트스트랩 매개변수

문제:

Angular2에서 어떻게 백엔드에서 렌더링된 매개변수를 부트스트랩 메소드에 전달하여 모든 HTTP 헤더를 설정할 수 있습니까? BaseRequestOptions를 사용하여 요청을 요청하시겠습니까?

해결책:

Angular의 종속성 주입을 활용하면 매개변수를 부트스트랩 함수에 직접 전달할 수 있습니다.

var headers = ... // retrieve headers from backend

bootstrap(AppComponent, [{provide: 'headers', useValue: headers})]);
로그인 후 복사

삽입하려면 헤더를 구성 요소나 서비스에 추가하려면 @Inject()를 사용하세요. 데코레이터:

class SomeComponentOrService {
   constructor(@Inject('headers') private headers) {}
}
로그인 후 복사

또는 사용자 정의 요청 옵션 클래스를 생성하여 직접 주입할 수 있습니다.

class MyRequestOptions extends BaseRequestOptions {
  constructor (private headers) {
    super();
  }
} 

var values = ... // retrieve headers from backend
var headers = new MyRequestOptions(values);

bootstrap(AppComponent, [{provide: BaseRequestOptions, useValue: headers})]);
로그인 후 복사

추가 접근 방식:

  • APP_INITIALIZER: 서비스 초기화 애플리케이션을 초기화하기 전에 백엔드의 데이터를 사용합니다. 이는 헤더 값을 설정하는 데 유용합니다.
  • 생성자 주입: 부트스트랩 방법 대신 Angular 2 생성자를 초기화에 사용할 수 있습니다.
  • AoT(Ahead -of-Time 컴파일): AoT를 사용하려면 공장 폐쇄를 다른 곳으로 옮기는 등 일부 수정이 필요합니다.
  • 인젝터: 순환 종속성이 발생하는 경우(예: 라우터 주입) 직접 주입 대신 인젝터를 사용하여 종속성을 검색할 수 있습니다.

위 내용은 HTTP 헤더 설정을 위해 백엔드 렌더링 매개변수를 Angular 2 Bootstrap에 전달하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿