Жетон на предъявителя Неверный жетон - PullRequest
0 голосов
/ 24 февраля 2020

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

const auth = async (req , res, next) => {
  try {
    const token = req.header('Authorization').replace('Bearer', '');
    const decoded = jwt.verify(token, 'thisismynewcourse');
    console.log('decoded', decoded);
    const user = await User.findOne({_id: decoded._id , 'tokens.token': token})
    console.log('token ',token);
    if (!user) {
      throw new Error()
    }
    req.token = token;
    req.user = user
    next();

  } catch (e) {
    console.log(e);
    res.status(400).send({error: 'please authenticate'})
  }
}

router.get('/users/me', auth ,async (req, res) => {
  res.send(req.user)
})

1 Ответ

1 голос
/ 24 февраля 2020

Токен на предъявителя форматируется следующим образом:

Bearer XXX // «Носитель» + пробел + токен

Вы забываете пробел на своей замене ()

Заменить .replace('Bearer', '');

этим .replace('Bearer ', '');

...