Как сохранять cookies в браузере если фронт и api на разных серверах?
Есть у меня фронт на Vue.js рендерит его server1.
Также есть бекенд api сервер на server2.
Cookies при логине отдает бекенд server2 написан на python flask с библиотекой cors.
С корсами вроде как порешал, но после того как добавил авторизацию, все поломалось, куки не сохраняются.
То есть при логине, бекенд отдает куки, но в дальнейшем они не сохраняются и не используются при остальных запросах на бекенд api server2.
На фронте использую Axios, параметр withCredentials: true использую, но все равно при запросах на сервер после логина получаю ошибку 401.
Виталий, Если сервера на разных доменах, то токены аутентификации можно проверять в заголовке Authorization, если нужно передавать именно куки можете попробовать настроить SameSite атрибут
Если у вас самописная авторизация, то нужно проверить middleware, который отвечает за выдачу пользователям прав. При первой авторизации сервер должен устанавливать куки в ответе, браузер их сохраняет (это можно проверить в инструментах разработчика, во вкладке "хранилище" -> "куки").
В случае, если в браузере ваши куки появились надо проверять как при запросах проверяются куки в middleware авторизации.
Дело в том, что при логин реквесте, в ответ server2 возращает куки, ето видно в инструментах разработчика во вкладке network в хидерах ответа сервера. Но после етого браузер ети куки не сохраняет
Виталий, значит проблема в том, как ваш бэкенд эти куки использует и читает. Проверяйте middleware отвечающий за авторизацию пользователя при запросах.