Аутентификация на основе файлов cookie в Angular 5 - PullRequest
0 голосов
/ 25 июня 2018

Я занимаюсь разработкой веб-сайта с использованием Angular 5 и Express JS .При успешном входе в систему я отправляю access_token куки с сервера на клиент.Cookie успешно устанавливается в браузере.Но когда я отправляю другие запросы после входа в систему, cookie-файл маркера доступа не отправляется автоматически, как при обычном обмене данными между сервером и клиентом (сеансовые cookie-файлы).И мой вопрос:

  • Правильна ли моя реализация?
  • Нужно ли для этого использовать перехватчики?
  • Нужно ли использовать заголовки для отправки токена вместо куки?

1 Ответ

0 голосов
/ 25 июня 2018

Если ваш сервер и клиент работают на другом порту, то вам не хватает withCredentials во всех ваших XMLHttpRequest

Вы должны использовать следующий перехватчик:

@Injectable()
export class CustomInterceptor implements HttpInterceptor {

    constructor() {
    }

    intercept(request: HttpRequest<any>, next: HttpHandler): Observable<HttpEvent<any>> {

        request = request.clone({
            withCredentials: true
        });

        return next.handle(request);
    }
}
...