Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Impara Handling Unhandled Promise Rejections | Async/Await and Best Practices for Asynchronous Code
Node.js Event Loop and Asynchronous Code

bookHandling Unhandled Promise Rejections

When working with Promises in Node.js, it is important to handle every possible rejection. If a Promise is rejected and there is no handler—such as a .catch() method or a try/catch block when using async/await—the rejection is considered unhandled. Unhandled Promise rejections can cause your application to behave unpredictably. In earlier versions of Node.js, unhandled rejections would only log a warning, but in more recent versions, they may cause the process to terminate. This can lead to downtime, lost data, or security risks if not addressed.

index.js

index.js

copy
Note
Note

In large Node.js applications, you can listen for unhandled Promise rejections globally to help with debugging or logging. This is especially useful in development environments.

process.on('unhandledRejection', (reason, promise) => {
  console.error('Unhandled Rejection:', reason);
});

This event lets you detect unhandled rejections, but it should not be used as a replacement for proper .catch() or try/catch handling. Always handle rejections explicitly in your code to prevent unexpected crashes in production.

question mark

What is a possible consequence of leaving a Promise rejection unhandled in recent versions of Node.js?

Select the correct answer

Tutto è chiaro?

Come possiamo migliorarlo?

Grazie per i tuoi commenti!

Sezione 3. Capitolo 4

Chieda ad AI

expand

Chieda ad AI

ChatGPT

Chieda pure quello che desidera o provi una delle domande suggerite per iniziare la nostra conversazione

Awesome!

Completion rate improved to 7.69

bookHandling Unhandled Promise Rejections

Scorri per mostrare il menu

When working with Promises in Node.js, it is important to handle every possible rejection. If a Promise is rejected and there is no handler—such as a .catch() method or a try/catch block when using async/await—the rejection is considered unhandled. Unhandled Promise rejections can cause your application to behave unpredictably. In earlier versions of Node.js, unhandled rejections would only log a warning, but in more recent versions, they may cause the process to terminate. This can lead to downtime, lost data, or security risks if not addressed.

index.js

index.js

copy
Note
Note

In large Node.js applications, you can listen for unhandled Promise rejections globally to help with debugging or logging. This is especially useful in development environments.

process.on('unhandledRejection', (reason, promise) => {
  console.error('Unhandled Rejection:', reason);
});

This event lets you detect unhandled rejections, but it should not be used as a replacement for proper .catch() or try/catch handling. Always handle rejections explicitly in your code to prevent unexpected crashes in production.

question mark

What is a possible consequence of leaving a Promise rejection unhandled in recent versions of Node.js?

Select the correct answer

Tutto è chiaro?

Come possiamo migliorarlo?

Grazie per i tuoi commenti!

Sezione 3. Capitolo 4
some-alt