Вынести функцию чтения файл из обработчика get запроса

Делаю простое учебное приложение. Есть сервер на express js, в котором есть следующий обработчик get запроса:

app.get('/api/getCities', async (req, res) => {
  try {

    // Асинхронное чтение файла (1)
    const cities = await readFileAsync(
      path.join(__dirname, 'data', 'city.list.json'),
      { encoding: 'utf8' },
    );
    // Какие то действия с данными из прочитанного файла(2)
    const sortedUniqCitiesInLatinWithSpaces = getFormattedListOfCities(cities);

    res.status(200).send(sortedUniqCitiesInLatinWithSpaces);
  } catch (error) {
    res.status(500).json({
      message: 'Server error',
    });
  }
});

Я хочу выполнять функции (1) и (2) один раз и пользоваться их результатом при поступающих get запросах. Подскажите пожалуйста, каким образом я мог бы это реализовать?


Ответы (0 шт):