Closed
Description
Issue Summary
Twilio SDK has unhandled rejection in SDK and can't catch it from the application. This issue causes application termination.
Steps to Reproduce
- See the code snippet
Code Snippet
const client = require('twilio')(TWILIO_ACCOUNT_SID, TWILIO_AUTH_TOKEN);
const getMessages = async () => {
try {
const result = await client.conversations.v1.services('SERVICE_SID').conversations('NOT_EXISTING_CONVERSATION_SID').messages.list();
return result;
} catch (e) {
console.log('------catch from getMessages', e);
}
};
process.on('unhandledRejection', (reason, promise) => {
// this should not be called since we catch every exception
console.log('------unhandledRejection', reason, promise);
});
process.on('rejectionHandled', (promise) => {
console.log('------rejectionHandled', promise);
});
getMessages().then((messages) => {
console.log('------messages', messages);
}).catch((e) => {
console.log('------catch from caller', e);
});
Exception/Log
------catch from getMessages RestException [Error]: The requested resource /Services/ISe0ef118171da46b9bd8ef1d33c82349e/Conversations/CHc8c5b974343a4546bb022e511885b6f1/Messages was not found
at MessagePage.processResponse (/Users/mimu/dev/summer-health/tmp/scripts/node_modules/twilio/lib/base/Page.js:135:19)
at new Page (/Users/mimu/dev/summer-health/tmp/scripts/node_modules/twilio/lib/base/Page.js:17:28)
at new MessagePage (/Users/mimu/dev/summer-health/tmp/scripts/node_modules/twilio/lib/rest/conversations/v1/service/conversation/message.js:315:9)
at /Users/mimu/dev/summer-health/tmp/scripts/node_modules/twilio/lib/rest/conversations/v1/service/conversation/message.js:282:63
at process.processTicksAndRejections (node:internal/process/task_queues:95:5) {
status: 404,
code: 20404,
moreInfo: 'https://www.twilio.com/docs/errors/20404',
details: undefined
}
------messages undefined
------unhandledRejection RestException [Error]: The requested resource /Services/ISe0ef118171da46b9bd8ef1d33c82349e/Conversations/CHc8c5b974343a4546bb022e511885b6f1/Messages was not found
at MessagePage.processResponse (/Users/mimu/dev/summer-health/tmp/scripts/node_modules/twilio/lib/base/Page.js:135:19)
at new Page (/Users/mimu/dev/summer-health/tmp/scripts/node_modules/twilio/lib/base/Page.js:17:28)
at new MessagePage (/Users/mimu/dev/summer-health/tmp/scripts/node_modules/twilio/lib/rest/conversations/v1/service/conversation/message.js:315:9)
at /Users/mimu/dev/summer-health/tmp/scripts/node_modules/twilio/lib/rest/conversations/v1/service/conversation/message.js:282:63
at process.processTicksAndRejections (node:internal/process/task_queues:95:5) {
status: 404,
code: 20404,
moreInfo: 'https://www.twilio.com/docs/errors/20404',
details: undefined
} Promise {
<rejected> RestException [Error]: The requested resource /Services/ISe0ef118171da46b9bd8ef1d33c82349e/Conversations/CHc8c5b974343a4546bb022e511885b6f1/Messages was not found
at MessagePage.processResponse (/Users/mimu/dev/summer-health/tmp/scripts/node_modules/twilio/lib/base/Page.js:135:19)
at new Page (/Users/mimu/dev/summer-health/tmp/scripts/node_modules/twilio/lib/base/Page.js:17:28)
at new MessagePage (/Users/mimu/dev/summer-health/tmp/scripts/node_modules/twilio/lib/rest/conversations/v1/service/conversation/message.js:315:9)
at /Users/mimu/dev/summer-health/tmp/scripts/node_modules/twilio/lib/rest/conversations/v1/service/conversation/message.js:282:63
at process.processTicksAndRejections (node:internal/process/task_queues:95:5) {
status: 404,
code: 20404,
moreInfo: 'https://www.twilio.com/docs/errors/20404',
details: undefined
}
}
Technical details:
- twilio-node version: 4.14.0
- node version: 18.14.1