Angular HTTP 요청에 인증 헤더를 추가하는 방법
Angular 애플리케이션을 Go API에 연결하려고 할 때 인증을 포함하는 것이 필수적입니다. HTTP 요청의 헤더. 이는 클라이언트와 서버 간의 통신을 보호합니다. 다음은 이를 수행하는 방법을 보여줍니다.
Angular 구현:
Angular 4 이상에서는 인증 헤더를 요청에 일관되게 적용하기 위해 HTTP 인터셉터를 사용하는 것이 좋습니다. 인터셉터의 예는 다음과 같습니다.
import { Injectable } from '@angular/core'; import { HttpEvent, HttpHandler, HttpInterceptor, HttpRequest } from '@angular/common/http'; import { Observable } from 'rxjs'; import { AuthService } from './auth.service'; @Injectable() export class AuthInterceptor implements HttpInterceptor { intercept(req: HttpRequest<any>, next: HttpHandler): Observable<HttpEvent<any>> { req = req.clone({ setHeaders: { Authorization: `Bearer ${AuthService.getToken()}`, }, }); return next.handle(req); } }
이 인터셉터는 Angular 모듈에 등록할 수 있습니다.
import { HTTP_INTERCEPTORS, HttpClientModule } from '@angular/common/http'; ... providers: [ { provide: HTTP_INTERCEPTORS, useClass: AuthInterceptor, multi: true, }, ], ...
Go 구현:
Go에서 CORS 헤더는 Angular 애플리케이션에서 보낸 헤더와 일치해야 합니다. 모든 헤더를 허용하려면 다음을 사용하세요.
headersOk := handlers.AllowedHeaders([]string{"*"}) originsOk := handlers.AllowedOrigins([]string{"*"}) methodsOk := handlers.AllowedMethods([]string{"GET", "HEAD", "POST", "PUT", "OPTIONS"})
또는 허용되는 헤더를 신중하게 정의하세요.
이러한 단계를 수행한 후에는 인증 헤더가 성공적으로 전송 및 승인되어 Angular와 Go의 통신.
위 내용은 Angular-Go API 통신을 보호하는 방법: 인증 헤더 추가?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!