În timpul dezvoltării aplicației, gestionarea erorilor este un aspect crucial pentru a asigura o experiență ușoară a utilizatorului și pentru a atenua problemele neprevăzute. În Express.js mediu, aveți mai multe modalități de a gestiona erorile și de a oferi utilizatorilor mesaje de răspuns adecvate. Iată un ghid despre cum să realizați acest lucru:
Utilizare Middleware pentru tratarea globală a erorilor
Creați o gestionare globală a erorilor middleware adăugând următorul cod la sfârșitul app.js
fișierului sau principal al Express.js aplicației dvs.
app.use((err, req, res, next) => {
console.error(err.stack);
res.status(500).send('Something went wrong!');
});
Gestionarea erorilor pentru anumite Route
Într-un anumit route, puteți utiliza un try
bloc catch
pentru a detecta erorile și a furniza mesaje de răspuns adecvate.
app.get('/profile/:id', async(req, res) => {
try {
const user = await getUserById(req.params.id);
res.json(user);
} catch(error) {
res.status(404).send('User not found!');
}
});
Utilizarea Eroare centralizată Middleware
Creați o eroare centralizată middleware pentru a gestiona erorile care provin din diverse route.
app.use((req, res, next) => {
const error = new Error('Not found');
error.status = 404;
next(error);
});
app.use((err, req, res, next) => {
res.status(err.status || 500);
res.send(err.message || 'Something went wrong');
});
Gestionarea erorilor asincrone
În cazul manipulării asincrone, utilizați next
metoda pentru a transmite erorile la gestionarea globală a erorilor middleware.
app.get('/data',(req, res, next) => {
fetchDataFromDatabase((err, data) => {
if(err) {
return next(err);
}
res.json(data);
});
});
Concluzie
Gestionarea erorilor este o parte integrantă a Express.js dezvoltării aplicațiilor. Utilizând middleware, gestionând anumite erori și furnizând mesaje de răspuns adecvate, puteți crea o experiență de aplicație fluidă și fiabilă pentru utilizatorii dvs.