Under applikationsudvikling er fejlhåndtering et afgørende aspekt for at sikre en smidig brugeroplevelse og afbøde uforudsete problemer. I Express.js miljøet har du flere måder at håndtere fejl på og give passende svarmeddelelser til brugerne. Her er en guide til, hvordan du opnår dette:
Bruges Middleware til global fejlhåndtering
Opret en global fejlhåndtering middleware ved at tilføje følgende kode i slutningen af app.js
eller hovedfilen i din Express.js applikation.
app.use((err, req, res, next) => {
console.error(err.stack);
res.status(500).send('Something went wrong!');
});
Håndtering af fejl for specifikke Route
I en specifik route, kan du bruge en try
-blok catch
til at fange fejl og give passende svarmeddelelser.
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!');
}
});
Brug af centraliseret fejl Middleware
Opret en centraliseret fejl middleware til at håndtere fejl, der stammer fra forskellige 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');
});
Håndtering af asynkrone fejl
I tilfælde af asynkron håndtering, brug next
metoden til at videregive fejl til den globale fejlhåndtering middleware.
app.get('/data',(req, res, next) => {
fetchDataFromDatabase((err, data) => {
if(err) {
return next(err);
}
res.json(data);
});
});
Konklusion
Fejlhåndtering er en integreret del af Express.js applikationsudvikling. Ved at bruge middleware, håndtere specifikke fejl og levere passende svarmeddelelser kan du skabe en jævn og pålidelig applikationsoplevelse for dine brugere.