Реагировать - обрабатывать jwt auth fail с помощью await fetch - PullRequest
0 голосов
/ 25 марта 2020

Я написал API, который делает некоторые вещи, и защищаю его с помощью токена jwt. Это функция для проверки действительности (checkAuth):

module.exports = (req, res, next) => {
  try {
    const token = req.headers.authorization;
    const decoded = jwt.verify(token, process.env.TOKEN_SECRET);
    req.userData = decoded;
    next();
  }
  catch (error) {
    return res.status(401).json({
      message: 'Auth failed'
    });
  }
};

И я определяю route из API следующим образом:

router.post('/myAPI', checkAuth, MyAPIDefinition);

Когда я попытаться получить API, используя expired jwt Я не могу получить ответ checkAuth. Это мой API вызов с использованием await fetch:

const response = await fetch(`${API_URI_DEV}/myAPI`, {
  method: 'POST',
  body: JSON.stringify({encod: { content: data }}),
  headers: {
    'Content-Type': 'application/json; charset=utf-8',
    Accept: 'application/json',
    'authorization': jwt
  }
});

Содержание response равно undefined.

...