Задать вопрос
@JadeShopKeeper

Error [ERR_HTTP_HEADERS_SENT]: Cannot set headers after they are sent to the client?

app.get('/auth/me', checkAuth, async (req, res) => {
  try {
    const user = await UserModel.findById(req.userId);
    const { passwordHash, ...userData } = user._doc;
    if (!user) {
      return res.status(404).json({ message: 'Не знайшли такого користувача' });
    } else {
      return res.status(200).json({
        ...userData,
      });
    }
  } catch (error) {
    console.log(error);

    return res.status(500).json({
      message: 'Запит на доступ відхилено',
    });
  }
});

ошибку вызывает:
else {
      return res.status(200).json({
        ...userData,
      });
    }

функция чек
import jwt from 'jsonwebtoken';

export default (req, res, next) => {
  const token = (req.headers.authorization || '').replace(/Bearer\s?/, '');
  if (token) {
    try {
      const decoded = jwt.verify(token, 'secret123');
      req.userId = decoded._id;
      next();
    } catch (error) {}
    return res.status(403).json({
      message: 'немає доступа',
    });
  } else {
    return res.status(403).json({
      message: 'немає доступа',
    });
  }
};
  • Вопрос задан
  • 85 просмотров
Подписаться 1 Средний Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы