Я запускаю приложение внешнего интерфейса на порту 5000 и бэкэнд (NodeJs / Express Js) на порту 3000. Мне нужно перенаправить пользователя на http://localhost:5000/dashboard
после успешной социальной аутентификации (GitHub) с помощью passport.js.
Я создал приложение в разделе приложений GitHub и получил clientId, clientSecret. И я могу заставить пользователя авторизоваться с помощью GitHub и получить необходимые поля и токен пользователя, а затем мне нужно перенаправить его на панель инструментов, отображающую его данные.
app.get('/auth/github',
passport.authenticate('github'))
app.get('/auth/github/callback',
passport.authenticate('github', {
successRedirect: '/dashboard',
failureRedirect: '/login'
}),
(req, res) => {
res.send('Done..')
})
app.get('/dashboard', (req, res) => {
res.send('User Dahboard..!')
})
Используя приведенный выше код, пользователь перенаправляется на http://localhost:3000/dashboard
вместо http://localhost:5000/dashboard
. Так как же мне добиться этого перенаправления, если я запускаю фронтенд и бэкэнд моего приложения на разных серверах?
Раньше я реализовывал с помощью шаблонизатора (ejs), и он отлично работает, так как интерфейс отрисовывается с сервера. Здесь дело обстоит иначе.