Énoncé du problème :
Tentative d'ajout d'un en-tête d'autorisation à un HTTP angulaire demande, mais réception d'un "Aucun en-tête 'Access-Control-Allow-Origin' n'est présent sur la ressource demandée" erreur.
Solution :
Dans les applications angulaires, les intercepteurs HTTP sont recommandés pour gérer les en-têtes d'authentification. Les gardes peuvent compléter cette approche pour la protection des routes.
Mise en œuvre d'intercepteurs d'authentification :
import { HttpEvent, HttpHandler, HttpInterceptor, HttpRequest } from '@angular/common/http'; import { Injectable } from '@angular/core'; import { Observable } from 'rxjs'; import { AuthService } from './auth.service'; @Injectable() export class AuthInterceptor implements HttpInterceptor { intercept(req: HttpRequest<any>, next: HttpHandler): Observable<HttpEvent<any>> { if (AuthService.isLoggedIn()) { const token = AuthService.getToken(); req = req.clone({ setHeaders: { 'Content-Type': 'application/json', 'Accept': 'application/json', 'Authorization': `Bearer ${token}`, }, }); } return next.handle(req); } }
import { HTTP_INTERCEPTORS } from '@angular/common/http'; import { AuthInterceptor } from './auth/auth.interceptor'; ... providers: [ { provide: HTTP_INTERCEPTORS, useClass: AuthInterceptor, multi: true, }, ... ], ...
Concernant Go Requête HTTP :
L'erreur suggère une incompatibilité potentielle entre les en-têtes de requête et CORS configuration. Implémentez les étapes suivantes :
headersOk := handlers.AllowedHeaders([]string{"*"})
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!