Я пытался получить заголовки http из класса HttpInterceptor.
Когда я пытался войти в заголовки, set-cookie нет.
Однако, когда я попытался свернуть URL-адрес, файл set-cookie присутствует.
Это мой класс HttpInterceptor, где я пытался получить доступ к заголовкам:
import { Injectable } from "@angular/core";
import { SessionService } from "../session/session.service";
import { HttpRequest, HttpHandler, HttpEvent, HttpErrorResponse } from "@angular/common/http";
import { Observable } from "rxjs";
import { tap } from "rxjs/operators";
@Injectable()
export class HttpRequestInterceptor {
constructor(private sessionService: SessionService) {
}
private isCachable(req: HttpRequest<any>): boolean {
if (req.method != 'GET' && req.method != 'OPTIONS') {
return false;
}
return true;
}
intercept(request: HttpRequest<any>, next: HttpHandler): Observable<HttpEvent<any>> {
const successHandler = (response) => {
// Intercept ecopayz successful form response.
if (!this.isCachable(request) && response.headers && response.headers.get('x-redirect-url')) {
window.location = response.headers.get('x-redirect-url');
}
var headers = response.headers;
if (headers) {
headers.headers.forEach((value, key) => {
console.log(key, value);
});
}
};
const errorHandler = (error): any => {
if (error instanceof HttpErrorResponse ) {
if (error.status === 401) {
this.sessionService.clearSession();
}
}
};
request = request.clone({
withCredentials: true
});
return next.handle(request).pipe(
tap(successHandler, errorHandler),
);
}
}
PS: заголовок set-cookie имеет флаг HttpOnly.
Почему это так?
Спасибо!