Elena0394
@Elena0394

Где лучше использовать промиссы, а не колбек?

Народ, где лучше использовать промиссы, а не колбек?
app.use('/', (req, res) => res.status(404).send({ message: 'Запрашиваемый ресурс не найден' }));

router.get('/', (req, res) => {
  readerFunction(usersPath, res).on('open', () => {
    res.writeHead(200, { 'Content-type': 'application/json; charset=utf-8' });
    readerFunction(usersPath, res).pipe(res);
  });
});

router.get('/:id', ((req, res) => {
  readerFunction(usersPath, res).on('open', () => {
    const users = jsonParse(usersPath);
    const user = users.find((item) => item._id === req.params.id);
    if (!user) res.status(404).send({ message: 'Нет пользователя с таким id' });
    res.send(user);
  });
}));

const readerFunction = (fileName, res) => {
  const reader = fs.createReadStream(fileName, { encoding: 'utf8' });
  reader.on('error', () => {
    res.status(500).json({ error: 'На сервере произошла ошибка' });
  });
  return reader;
};
const jsonParse = (fileName) => JSON.parse(fs.readFileSync(fileName, { encoding: 'utf8' }));
  • Вопрос задан
  • 85 просмотров
Пригласить эксперта
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы