фронт делает запрос, далее гугл или другой провайдер делают колл на /redirect uri, и вот в контроллере этого роута, что делать? Я пытался установить токен в куки и сделать редирект на фронт, но почему то куки не выставляется никака (выставляется только при локальной разработке, когда деплою на хероку ничего не делает в девтулах нету куки)
Погугли в сторону set credentials что-то такое, это на фронте флаг что куки можно проксировать дальше своего домена, если не ошибаюсь, это то что тебе нужно
Вернуть респонс с заголовком Set-Cookie с указанием домена, без редиректа.
Попробую, а как тогда на фронт редеректнет?
Схема примерно такая: 1. На фронте через sdk провайдер дергается метод авторизации 2. Возвращаются credentials 3. Затем token из credentials отправлятеся на бек 4. Там он валидиурется, проверяется есть ли такой пользователь, если нет создается 5. Авторизируется и возвращает JWT в куке через заголовок
Да, но я так понимаю у меня другой подход. Я использую пасспорт и у меня немного другая схема
handleGoogleOAuth(req, res) { res.cookie('token', req.user.generateJwt(), { maxAge: 60 * 60 * 24 * 30, path: '/', domain: process.env.COOKIE_DOMAIN }); res.redirect(`${process.env.PUBLIC_URL}`); }
Domain это домен бэка?
Обсуждают сегодня