Rumah >pembangunan bahagian belakang >Golang >Bagaimana untuk Selamatkan Komunikasi API Angular-Go: Menambah Pengepala Kebenaran?

Bagaimana untuk Selamatkan Komunikasi API Angular-Go: Menambah Pengepala Kebenaran?

Susan Sarandon
Susan Sarandonasal
2024-12-16 04:13:17690semak imbas

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

Cara Menambah Pengepala Keizinan pada Permintaan HTTP Sudut

Apabila cuba menyambungkan aplikasi Sudut kepada API Go, adalah penting untuk memasukkan kebenaran pengepala dalam permintaan HTTP. Ini menjamin komunikasi antara pelanggan dan pelayan. Berikut menunjukkan cara untuk mencapainya:

Pelaksanaan Sudut:

Dalam Sudut 4 dan ke atas, disyorkan untuk menggunakan Pemintas HTTP untuk menggunakan pengepala kebenaran secara konsisten pada permintaan. Berikut ialah contoh pemintas:

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);
  }
}

Pemintas ini boleh didaftarkan dalam modul Sudut:

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

...
providers: [
    {
      provide: HTTP_INTERCEPTORS,
      useClass: AuthInterceptor,
      multi: true,
    },
],
...

Perlaksanaan Go:

Dalam Go, pengepala CORS perlu sepadan dengan yang dihantar oleh aplikasi Angular. Untuk membenarkan semua pengepala, gunakan yang berikut:

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

Sebagai alternatif, tentukan dengan teliti pengepala yang dibenarkan.

Setelah langkah ini diambil, pengepala kebenaran harus berjaya dihantar dan diterima, membolehkan komunikasi antara Angular dan Go.

Atas ialah kandungan terperinci Bagaimana untuk Selamatkan Komunikasi API Angular-Go: Menambah Pengepala Kebenaran?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn