Отправка JWT обратно в виде строки запроса после Google oauth - PullRequest
0 голосов
/ 15 декабря 2018

Каков наилучший способ отправки JWT после того, как пользователь будет аутентифицирован google oauth?

В настоящее время я использую узел / экспресс в качестве бэкэнда и реагирую как веб-интерфейс (они находятся в разных доменах).

Одним из способов является установка токена в виде строки запроса и перенаправление для реакции.

Экспресс-маршрутизатор:

router.get(
    '/auth/google',
    passport.authenticate('google', { scope: ['profile', 'email'] })
);
router.get(
    '/auth/google/callback',
    passport.authenticate('google', { failureRedirect: '/', session: false }),
    (req, res) => {
        const token = req.user.token;
        res.redirect(`http://localhost:3000?token=${token}`);
    }
);

App.js в реакции:

componentWillMount() {
    const query = queryString.parse(this.props.location.search);
    if (query.token) {
      window.localStorage.setItem('jwt', query.token);
      this.props.history.push('/');
   }
}
render(){
   ...
}

Безопасна ли отправка токена в виде строки запроса?

Есть ли лучший способ для этого?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...