Не могу установить куки для внешнего интерфейса - PullRequest
0 голосов
/ 07 февраля 2019

Я пытаюсь реализовать аутентификацию в моей системе MEVN на основе JWT и файла cookie httpOnly.Я использую внешний сервер (Vuejs) на локальном хосте: 8080 и внутренний сервер (RestAPI nodejs) на локальном хосте: 8000 для своей среды разработки.Мой API-сервер работает правильно, когда я проверяю с почтальоном.Просто ручной доступ к конечным точкам URL с помощью браузера также работает нормально.Интерфейс (8080) может запрашивать HTTP-запросы к серверу (8000), а также серверные ответы обратно, так как я установил CORS.Однако сервер не может прикрепить cookie к ответу.В частности, после того, как веб-интерфейс делает запрос и сервер отвечает на него cookie, кажется, что веб-интерфейс блокирует cookie по соображениям безопасности (я полагаю, это связано с тем, что браузер считает, что у них другой домен, даже если я установил заголовки CORS).Я пробовал 'withCredentials' хорошо, но не сработало.Если я вручную получаю доступ к конечной точке бэкэнд API через браузер, он без проблем получает cookie.например, допустим, у меня есть поддельная временная конечная точка GET на сервере API, которая просто выдает токен пользователю, и конечная точка GET, которая проверяет, прошел ли пользователь аутентификацию.Доступ к фиктивной временной конечной точке дает мне действительный файл cookie, а затем конечная точка проверки подлинности возвращает мне «пользователь вошел в систему», что я и установил для конечной точки.Таким образом, в основном, если я использую и внешний, и внутренний интерфейсы на одном и том же порту, это будет работать нормально.Однако я использую разные порты даже для развернутого.И моя текущая реализация не работает с localhost: 8080 и localhost: 8000.Я боролся с этим в течение долгого времени, и я применил большинство исправлений, которые я получил из Интернета.Спасибо за чтение!

...