UnhandledPromiseRejection: This error originated either by throwing inside of an async function without a catch block (process exited with code 1) – Node.js ERR_UNHANDLED_REJECTION

ERR_UNHANDLED_REJECTION

A partire da Node.js v15, le promesse rifiutate prive di blocco '.catch()' o 'try/catch' non generano più solo un avviso ma terminano forzatamente il processo con exit code 1 per prevenire stati incoerenti.

Cosa significa questo errore?

A partire da Node.js v15, le promesse rifiutate prive di blocco '.catch()' o 'try/catch' non generano più solo un avviso ma terminano forzatamente il processo con exit code 1 per prevenire stati incoerenti.

Messaggio originale

UnhandledPromiseRejection: This error originated either by throwing inside of an async function without a catch block (process exited with code 1)

Contesto e parole chiave

Alias

  • UnhandledPromiseRejection process exited with code 1 Node.js

Messaggi alternativi

  • promessa rifiutata non gestita arresto forzato del processo

Prodotti

  • Node.js Runtime (v18 LTS, v20 LTS, v22 LTS, v24)

Piattaforme

  • Linux
  • macOS
  • Windows

Parole chiave

  • ERR_UNHANDLED_REJECTION
  • errore-nodejs-unhandled-promise-rejection-exit-code-1
  • Event Loop ed EventEmitter
  • javascript-backend
  • node
  • nodejs
  • nodejs.eventloop.unhandled-promise-rejection-crash

Cause possibili

Origine del problema per Errore Node.js: UnhandledPromiseRejection (Arresto Forzato in Node.js 15+)

A partire da Node.js v15, le promesse rifiutate prive di blocco '.catch()' o 'try/catch' non generano più solo un avviso ma terminano forzatamente il processo con exit code 1 per prevenire stati incoerenti.

molto comune

Diagnosi

Diagnostica di runtime o stack trace per Errore Node.js: UnhandledPromiseRejection (Arresto Forzato in Node.js 15+)

Eseguire Node.js con i flag diagnostici (--trace-warnings --trace-uncaught) per visualizzare l'origine dettagliata dell'eccezione.

Come leggere il risultato. Evidenzia il modulo esatto, la riga e lo stack trace della chiamata asincrona in errore.

terminal
node --trace-warnings --trace-uncaught app.js

Risoluzione

Risoluzione per Errore Node.js: UnhandledPromiseRejection (Arresto Forzato in Node.js 15+)

Difficoltà: mediaRischio: basso

Applicare la correzione al codice sorgente Node.js o alla configurazione del package.json / sistema operativo.

  1. Ispezionare la riga evidenziata dal codice di errore o stack trace
  2. Aggiornare la sintassi di import/export, la gestione degli stream o le chiamate di rete
  3. Riavviare il processo Node.js o il demone di produzione (PM2/systemd) per verificare la correzione
terminal
node app.js

Domande frequenti

Come risolvere l'errore Errore Node.js: UnhandledPromiseRejection (Arresto Forzato in Node.js 15+) in Node.js?

A partire da Node.js v15, le promesse rifiutate prive di blocco '.catch()' o 'try/catch' non generano più solo un avviso ma terminano forzatamente il processo con exit code 1 per prevenire stati incoerenti.

Approfondimenti

Schede correlate