Set-Cookie не работает на Opera / Firefox, но работает на Почтальоне. (Экспресс) - PullRequest
0 голосов
/ 17 ноября 2018

Я целый день читал о людях, у которых была такая же проблема, и я перепробовал все, что мог, но, похоже, не могу заставить его работать.

Я думаю, что это связано с политикой безопасности браузера., мой сервер и клиент работают как на разных портах локального хоста , так и браузер угрожает им как разным доменам.

Однако, как я уже сказал, файл cookie устанавливается, если я делаю запрос на публикацию от Postman..

Cookieparser и cors включены и пробовали несколько конфигураций для них, ни одна не работала.

Также пробовал разные настройки для домена и пути с одинаковым результатом.

Я также думал, что это может быть связано с аддонами моего браузера или чем-то в этом роде, но я пытался с инкогнито, другими браузерами и получил те же результаты ...

Клиентское приложение на Angular, но я сомневаюсь, что это как-то связано с проблемой из прочитанного.

res.cookie("SESSIONID", jwtBearerToken, { domain: 'localhost', secure: false, httpOnly: false, path: '/', maxAge: 9000000 }).send();

Что я получаю в браузере:

ЗАПРОС И ОТВЕТ

Спасибо

1 Ответ

0 голосов
/ 17 ноября 2018

Решил сам.

Пришлось указать источник, видимо, что подстановочный знак '*' недействителен с учетными данными

app.use(cors({
    origin: 'http://localhost:4200',
    credentials: true
}));

Затем по моему угловому http-запросу мне пришлось добавить withCredentials: true (который я уже пробовал, но с использованием подстановочного знака на источнике).

Надеюсь, это полезно для всех!

...