Matul l-iżvilupp tal-applikazzjoni, l-immaniġġjar tal-iżbalji huwa aspett kruċjali biex tiġi żgurata esperjenza tal-utent bla xkiel u jittaffew kwistjonijiet mhux previsti. Fl- Express.js ambjent, għandek diversi modi kif timmaniġġja l-iżbalji u tipprovdi messaġġi ta 'rispons adattati lill-utenti. Hawnhekk hawn gwida dwar kif tikseb dan:
Użu Middleware għall-Immaniġġjar ta' Żbalji Globali
Oħloq ġestjoni ta' żball globali middleware billi żżid il-kodiċi li ġej fl-aħħar tal-fajl app.js
jew tal-fajl prinċipali tal Express.js -applikazzjoni tiegħek.
app.use((err, req, res, next) => {
console.error(err.stack);
res.status(500).send('Something went wrong!');
});
Immaniġġjar ta' Żbalji għal Speċifiċi Route
Fi route, tista' tuża a try
- catch
block biex taqbad l-iżbalji u tipprovdi messaġġi ta' rispons xierqa.
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!');
}
});
Bl-użu ta' Żball Ċentralizzat Middleware
Oħloq żball ċentralizzat middleware biex timmaniġġja żbalji li joriġinaw minn diversi 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');
});
Immaniġġjar ta' Żbalji Asinkroniċi
Fil-każ ta' mmaniġġjar mhux sinkroniku, uża l- next
metodu biex tgħaddi l-iżbalji lill-immaniġġjar globali tal-iżbalji middleware.
app.get('/data',(req, res, next) => {
fetchDataFromDatabase((err, data) => {
if(err) {
return next(err);
}
res.json(data);
});
});
Konklużjoni
L-immaniġġjar tal-iżbalji huwa parti integrali mill Express.js -iżvilupp tal-applikazzjoni. Billi tuża middleware, timmaniġġja żbalji speċifiċi, u tipprovdi messaġġi ta' rispons xierqa, tista' toħloq esperjenza ta' applikazzjoni bla xkiel u affidabbli għall-utenti tiegħek.