У меня есть следующая функция, которая получает сообщение от aws SQS, проблема в том, что я получаю по одному за раз, и я хочу получить их все, потому что мне нужно проверять идентификатор для каждого сообщения:
function getSQSMessages() {
const params = {
QueueUrl: 'some url',
};
sqs.receiveMessage(params, (err, data) => {
if(err) {
console.log(err, err.stack)
return(err);
}
return data.Messages;
});
};
function sendMessagesBack() {
return new Promise((resolve, reject) => {
if(Array.isArray(getSQSMessages())) {
resolve(getSQSMessages());
} else {
reject(getSQSMessages());
};
});
};
Функция sendMessagesBack () используется в другой функции async / await.
Я не уверен, как получить все сообщения, так как я искал, как их получить, люди упоминают циклы, но я не мог понять, как реализовать это в моем случае.
Я предполагаю, что должен поместить sqs.receiveMessage () в цикл, но потом я запутался в том, что мне нужно проверять и когда останавливать цикл, чтобы я мог получить идентификатор каждого сообщения?
Если у кого-нибудь есть советы, поделитесь.
Спасибо.