Heim > Backend-Entwicklung > Golang > So sichern Sie die Angular-Go-API-Kommunikation: Autorisierungsheader hinzufügen?

So sichern Sie die Angular-Go-API-Kommunikation: Autorisierungsheader hinzufügen?

Susan Sarandon
Freigeben: 2024-12-16 04:13:17
Original
681 Leute haben es durchsucht

How to Secure Angular-Go API Communication:  Adding Authorization Headers?

So fügen Sie Angular-HTTP-Anfragen einen Autorisierungsheader hinzu

Beim Versuch, eine Angular-Anwendung mit einer Go-API zu verbinden, ist es wichtig, die Autorisierung einzubeziehen Header in den HTTP-Anfragen. Dies sichert die Kommunikation zwischen Client und Server. Im Folgenden wird gezeigt, wie dies erreicht wird:

Angular-Implementierung:

In Angular 4 und höher wird die Verwendung von HTTP-Interceptoren empfohlen, um Autorisierungsheader konsistent auf Anfragen anzuwenden. Hier ist ein Beispiel für einen Interceptor:

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);
  }
}
Nach dem Login kopieren

Dieser Interceptor kann im Angular-Modul registriert werden:

import { HTTP_INTERCEPTORS, HttpClientModule } from '@angular/common/http';

...
providers: [
    {
      provide: HTTP_INTERCEPTORS,
      useClass: AuthInterceptor,
      multi: true,
    },
],
...
Nach dem Login kopieren

Go-Implementierung:

In Go müssen CORS-Header mit denen übereinstimmen, die von der Angular-Anwendung gesendet werden. Um alle Header zuzulassen, verwenden Sie Folgendes:

headersOk := handlers.AllowedHeaders([]string{"*"})
originsOk := handlers.AllowedOrigins([]string{"*"})
methodsOk := handlers.AllowedMethods([]string{"GET", "HEAD", "POST", "PUT", "OPTIONS"})
Nach dem Login kopieren

Alternativ definieren Sie sorgfältig die zulässigen Header.

Sobald diese Schritte ausgeführt wurden, sollten Autorisierungsheader erfolgreich übertragen und akzeptiert werden, wodurch die aktiviert wird Kommunikation zwischen Angular und Go.

Das obige ist der detaillierte Inhalt vonSo sichern Sie die Angular-Go-API-Kommunikation: Autorisierungsheader hinzufügen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage