Результат обратного вызова библиотеки через get API nodejs - PullRequest
0 голосов
/ 07 мая 2018

Я пытаюсь получить все письма из входящей почты в 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 Ответ

0 голосов
/ 08 мая 2018

Я решил решить это самостоятельно, вот что я сделал (на случай, если кто-то еще столкнется с той же проблемой). Базовая информация: Сервер: Ubuntu с экспресс-сервером Серверный стек: nodeJs с усами (руль) Фронтенд: бутстрап, угловой

Мне пришлось создать API-интерфейс get, но эта библиотека IMAP имеет свои собственные события, в зависимости от которых возвращается результат, поэтому просто используя запрос / ответ в экспрессе, я сделал следующее:

app.get('/getBox', (req, res) => {res.send({status: true});});

таким образом, отправка ответа при запуске конечного события imap была единственной работающей функцией.

...