Я изучаю Angular с помощью стекового проекта MEAN.Полный код здесь: Угловой интерфейс , Node.js API .
На сервере я использую паспортную аутентификацию с поведением на основе сеанса по умолчаниюи у меня настроены локальные, Google и Facebook стратегии.Passport будет вставлять пользовательские данные в файл cookie сеанса для анализа и использования клиентским интерфейсом для отображения имени пользователя, адреса электронной почты, профиля и т. Д.
Так что теперь в серверном, что мне нужноДля этого нужно извлечь cookie и десериализовать его, а затем написать методы, которые будут использовать указанный cookie для получения пользовательских данных, а также базовый метод isLoggedIn (), который будет просто проверять наличие действительного cookie.
Чтобы сделатьчто, я попробовал оба ngx-cookie и ngx-cookie-service и имею ту же проблему с обоими: я могу создать и прочитать созданный мной cookie, нокуки-файлы 'session' и 'session.sig', созданные Passport, остаются невидимыми для метода getAll (и любого get ('session')).
Вся обработка кода, которая находится внутри authentication.service.ц .В настоящее время все методы предназначены для аутентификации на основе токенов, поэтому мне нужно их изменить.В частности, это метод, который я использую для проверки обработки файлов cookie:
public getCookies() {
this.cookies.set('test', 'yay');
console.log('test: ', this.cookies.check('test'));
const allCookies = this.cookies.getAll();
console.log('allCookies: ', allCookies);
return allCookies;
}
Вывод на консоль этого кода показывает только один файл cookie, «test».Я вижу, что в инструментах разработчика браузера есть еще два файла cookie, «session» и «session.sig», к которым я хочу получить доступ.Но как?
Спасибо!