Cookie из API на другом домене, который я контролирую - PullRequest
0 голосов
/ 15 мая 2018

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

Когда пользователь входит в веб-интерфейс, POST-запрос отправляется с "credentials: 'include'" (я использую fetch) в мой внутренний API, который возвращает токен jwt, если вход был успешным. Все это прекрасно работает, и я вижу cookie в инструментах Chrome Dev, и прекрасно работают действия, требующие аутентификации.

Однако, когда я обновляю сайт, cookie-файлы jwt исчезают. Я исключил ошибки с истечением срока действия. Экспериментально я выяснил, что проблема в домене. Домен cookie - это «127.0.0.1» из локально размещенного экземпляра API, который отличается от домена локально размещенного веб-сайта. Если я вручную изменю домен cookie на тот же, что и на сайте, cookie не исчезнет.

Но это не решает мою проблему навсегда, поскольку бэкэнд-API размещен в другом домене, чем внешний интерфейс. Я читал о междоменных запросах, но я не уверен, что делать дальше. Я контролирую как внешний, так и внутренний интерфейсы, но начинаю задумываться, могу ли я поступить неправильно по этому поводу? Будет ли самое простое решение для размещения моего API, скажем, «api.mydomain.com» вместо этого?

...