Результат обратного вызова библиотеки через get API nodejs
Я пытаюсь получить все письма из входящей почты в nodejs, и я использую эту библиотеку IMAP, мне удалось получить все письма на моем локальном компьютере, теперь я хочу предоставить ее как API get, так что я Я использовал экспресс-сервер и создал URL-адрес get, но проблема в том, что библиотека IMAP имеет свой собственный обратный вызов, упомянутый ниже:
imap.once('end', function() {
console.log('Connection ended');
res.send(JSON.stringify({data: inboxesVals});
});
И я не знаю, можем ли мы поместить весь библиотечный код, включая обратный вызов выше, в этот функциональный блок API GET, так как мне ждать, пока библиотека IMAP получит результаты и вернет ответ?
1 ответ
Я решил решить это самостоятельно, вот что я сделал (на случай, если кто-то еще столкнется с той же проблемой). Основная информация: Сервер: Ubuntu с экспресс-сервером. Стек сервера: nodeJs с усами (руль). Внешний интерфейс: начальная загрузка, угловой.
Мне пришлось создать API get, но эта библиотека IMAP имеет свои собственные события, в зависимости от которых возвращается результат, поэтому, просто используя запрос / ответ в экспрессе, я сделал следующее:
app.get('/getBox', (req, res) => {res.send({status: true});});
так что отправка ответа, когда запускается конечное событие imap, - единственное, что сработало.