Rumah > pembangunan bahagian belakang > Golang > Bagaimana untuk Melindungi Permintaan HTTP Sudut dan Mengendalikan CORS dalam Go?

Bagaimana untuk Melindungi Permintaan HTTP Sudut dan Mengendalikan CORS dalam Go?

Patricia Arquette
Lepaskan: 2024-12-13 21:25:12
asal
364 orang telah melayarinya

How to Secure Angular HTTP Requests and Handle CORS in Go?

Mengendalikan Pengepala Keizinan dalam Sudut dan Pergi

Untuk menambah pengepala Kebenaran pada permintaan HTTP Sudut, pertimbangkan untuk menggunakan Pemintas HTTP. Ia membenarkan anda menambah pengepala pada setiap permintaan, manakala Pengawal boleh digunakan untuk perlindungan laluan.

Contoh Pemintas HTTP Sudut:

// auth.interceptor.ts
import { HttpEvent, HttpHandler, HttpInterceptor, HttpRequest } from '@angular/common/http';
import { Injectable } from '@angular/core';
import { Observable } from 'rxjs/Observable';
import { AuthService } from './auth.service';

@Injectable()
export class AuthInterceptor implements HttpInterceptor {
  intercept(req: HttpRequest<any>, next: HttpHandler): Observable<HttpEvent<any>> {
    req = req.clone({
      setHeaders: {
        'Content-Type': 'application/json; charset=utf-8',
        'Accept': 'application/json',
        'Authorization': `Bearer ${AuthService.getToken()}`,
      },
    });

    return next.handle(req);
  }
}
Salin selepas log masuk

Daftarkan pemintas sebagai pembekal dalam app.module.ts:

// app.module.ts
import { HTTP_INTERCEPTORS, HttpClientModule } from '@angular/common/http';
import { AuthInterceptor } from '../auth/auth.interceptor';

...

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

...
Salin selepas log masuk

Go CORS Konfigurasi:

Dalam Go, pastikan konfigurasi CORS anda sepadan dengan pengepala HTTP yang dihantar oleh klien. Jika perlu, benarkan semua pengepala:

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

Periksa pengepala dalam Alat Pembangun Chrome anda dan pertimbangkan untuk mengkonfigurasi semula tetapan CORS anda dengan teliti agar sejajar dengan pengepala pelanggan. Ini akan menyelesaikan isu CORS yang anda alami.

Atas ialah kandungan terperinci Bagaimana untuk Melindungi Permintaan HTTP Sudut dan Mengendalikan CORS dalam Go?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan