Я создаю REST API, который получает необработанные данные из Интернета, затем применяет к ним REGEX и возвращает его в формате JSON.
Это моя функция для получения данных в виде JSON.
сначалаЯ использую функцию get () для получения необработанных данных, а не ANIME_LIST_REGEX.exec () для фильтрации по регулярному выражению в формате JSON.
async function getAnimeList(url) {
const {body} = await got(url);
let ANIME_LIST_DATA = ANIME_LIST_REGEX.exec(body)
if (!ANIME_LIST_DATA) {
return null;
}
return {
animeList: ANIME_LIST_DATA[1]
};
}
в этой конечной точке я получаю данные из 1-й функции и анализирую JSON, возвращая их как ответ.
app.get('/anime-list', async (req, res, next) => {
const appData = await getAnimeList(URL_BASE_ANIME_LIST);
var listJson = JSON5.parse(appData.animeList)
res.json(listJson)
})
Проблема в том, что возвращаемый массив довольно большой (5000 записей объектов js) и запрос занимает много времени, чтобы вернуться и показать массив
Что я хочу сделать, это возвращать кусок этого массива каждый раз, когда я вызываю функцию или достигаю конечной точки.
Пробовал несколько методов, но ни один из нихимеет смысл.
Кто-нибудь есть идея?