Authentifizierungs-Header hinzufügen
Tokens an ausgehende Anfragen anhängen
Authentifizierungs-Header hinzufügen ist eine kostenlose Angular Academy-Lektion auf CoddyKit. Dies ist Lektion 2 von 4. Du kannst die komplette Lektion unten kostenlos lesen – dann übst du sie direkt im Browser mit einem integrierten Code-Editor und einem KI-Tutor rund um die Uhr. Sie ist Teil des Angular Academy-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der Angular Academy-Kurs umfasst insgesamt 4 Lektionen.
Warum ein Interceptor für Authentifizierung
Die meisten APIs erfordern bei jeder Anfrage einen Authorization-Header. Statt ihn manuell zu jedem Aufruf hinzuzufügen, fügt ein Interceptor ihn automatisch allen ausgehenden Anfragen hinzu.
Klonen, um einen Header hinzuzufügen
Da Anfragen unveränderlich sind, klonen Sie sie mit setHeaders, um das Token anzuhängen.
export const authInterceptor: HttpInterceptorFn = (req, next) => {
const token = inject(AuthService).getToken();
const authReq = req.clone({
setHeaders: { Authorization: 'Bearer ' + token }
});
return next(authReq);
};Das Token aus einem Service auslesen
Beziehen Sie einen Auth-/Token-Service, um das aktuelle Token abzurufen. Ein Signal oder ein BehaviorSubject darin hält den Wert aktuell.
export class AuthService {
private token = signal<string | null>(null);
getToken() { return this.token(); }
setToken(t: string) { this.token.set(t); }
}Ohne Token überspringen
Wenn der Benutzer nicht angemeldet ist, geben Sie die ursprüngliche Anfrage unverändert weiter.
export const authInterceptor: HttpInterceptorFn = (req, next) => {
const token = inject(AuthService).getToken();
if (!token) return next(req);
return next(req.clone({
setHeaders: { Authorization: 'Bearer ' + token }
}));
};Nur an Ihre API anhängen
Geben Sie Ihr Token nicht an URLs von Drittanbietern weiter. Prüfen Sie, ob die URL der Anfrage zu Ihrem Backend gehört.
const isApi = req.url.startsWith(environment.apiUrl);
if (!isApi || !token) return next(req);
return next(req.clone({
setHeaders: { Authorization: 'Bearer ' + token }
}));setHeaders und headers.set
setHeaders in clone ist die Kurzform. Sie können auch req.headers.set(...) verwenden und das Ergebnis über { headers } übergeben. setHeaders führt Header zusammen, ersetzt also nicht alle Header.
const headers = req.headers.set('Authorization', 'Bearer ' + token);
return next(req.clone({ headers }));Mehrere Header hinzufügen
Hängen Sie mehrere Header gleichzeitig in einem einzigen Klon an.
return next(req.clone({
setHeaders: {
Authorization: 'Bearer ' + token,
'X-Client': 'web',
'Accept-Language': lang
}
}));withCredentials für Cookies
Wenn die Authentifizierung statt über Tokens über HttpOnly-Cookies erfolgt, setzen Sie withCredentials, damit der Browser sie ursprungsübergreifend sendet.
return next(req.clone({ withCredentials: true }));Ein abgelaufenes Token aktualisieren
Für die Token-Aktualisierung kann der Interceptor einen 401-Fehler abfangen, ein neues Token anfordern und anschließend die ursprüngliche Anfrage wiederholen – ein fortgeschritteneres Muster, das bei der Fehlerbehandlung behandelt wird.
Den Interceptor schlank halten
Der Interceptor sollte das Token auslesen und die Anfrage klonen – vermeiden Sie es, hier Navigationen oder aufwendige Logik auszulösen. Halten Sie die Zuständigkeiten klar getrennt, damit die Anfrage-Pipeline vorhersehbar bleibt.
Den Auth-Interceptor registrieren
Platzieren Sie ihn früh in der Kette, damit der Header vorhanden ist, bevor die Protokollierung oder andere Interceptors ausgeführt werden.
provideHttpClient(
withInterceptors([authInterceptor, loggingInterceptor])
)Kurzer Check
Testen Sie Ihr Verständnis vom Hinzufügen von Auth-Headern.
Zusammenfassung: Auth-Header hinzufügen
Ein Auth-Interceptor hängt das Token an ausgehende Anfragen an.
- Klonen Sie mit
setHeaders: { Authorization: ... }. - Überspringen Sie Anfragen ohne Token und beschränken Sie die Anwendung auf Ihre API-URL.
- Verwenden Sie
withCredentialsfür Cookie-basierte Authentifizierung.
Als Nächstes: Fehler global behandeln.
Häufig gestellte Fragen
Ist die Lektion „Authentifizierungs-Header hinzufügen“ kostenlos?
Ja — der vollständige Text von „Authentifizierungs-Header hinzufügen“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des Angular Academy-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der Angular Academy-Kurs umfasst insgesamt 4 Lektionen.
Was lerne ich in „Authentifizierungs-Header hinzufügen“?
Tokens an ausgehende Anfragen anhängen Du übst Angular Academy mit praktischem Code, den du direkt im Browser ausführst, und ein 24/7 KI-Tutor beantwortet deine Fragen während du die Lektion bearbeitest.
Brauche ich Erfahrung, um Angular Academy zu starten?
Keine Vorkenntnisse erforderlich. Angular Academy auf CoddyKit ist für Anfänger bis fortgeschrittene Lernende strukturiert, sodass du hier starten oder von Anfang an beginnen und in deinem eigenen Tempo voranschreiten kannst. Dies ist Lektion 2 von 4.
Wie lange dauert die Lektion „Authentifizierungs-Header hinzufügen“?
Die meisten CoddyKit-Lektionen dauern etwa 5–10 Minuten. Jede ist kompakt und interaktiv, sodass du stetig Fortschritte machst und genau dort weitermachst, wo du aufgehört hast – im Web und in der App.
Kann ich in dieser Angular Academy-Lektion Code schreiben und ausführen?
Ja. Jede Angular Academy-Lektion enthält einen integrierten Code-Editor, sodass du echten Code direkt in deinem Browser schreibst und ausführst und sofort KI-Feedback erhältst — ohne lokale Einrichtung erforderlich.
Alle Lektionen in diesem Kurs
- Funktionale Interceptors
- Authentifizierungs-Header hinzufügen
- Fehler global behandeln
- Wiederholungen und Ladeanzeigen