Penanganan Kesalahan ing Express.js: Strategi Efektif lan Pesen Tanggapan

Sajrone pangembangan aplikasi, penanganan kesalahan minangka aspek penting kanggo njamin pengalaman pangguna sing lancar lan nyuda masalah sing ora dikarepake. Ing Express.js lingkungan, sampeyan duwe sawetara cara kanggo nangani kesalahan lan menehi pesen respon sing cocog kanggo pangguna. Mangkene pandhuan babagan carane entuk iki:

Nggunakake Middleware kanggo Global Error Handling

Gawe penanganan kesalahan global middleware kanthi nambahake kode ing ngisor iki ing pungkasan app.js utawa file utama Express.js aplikasi sampeyan.

app.use((err, req, res, next) => {  
  console.error(err.stack);  
  res.status(500).send('Something went wrong!');  
});  

Nangani Kasalahan kanggo Spesifik Route

Ing tartamtu route, sampeyan bisa nggunakake a try- catch block kanggo nyekel kasalahan lan menehi pesen respon cocok.

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!');  
  }  
});  

Nggunakake Centralized Error Middleware

Gawe kesalahan terpusat middleware kanggo nangani kesalahan sing asale saka macem-macem 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');  
});  

Nangani Kasalahan Asynchronous

Ing kasus penanganan asinkron, gunakake next cara kanggo ngirim kesalahan menyang penanganan kesalahan global middleware.

app.get('/data',(req, res, next) => {  
  fetchDataFromDatabase((err, data) => {  
    if(err) {  
      return next(err);  
    }  
    res.json(data);  
  });  
});  

 

Kesimpulan

Penanganan kesalahan minangka bagean integral saka Express.js pangembangan aplikasi. Kanthi nggunakake middleware, nangani kesalahan tartamtu, lan menehi pesen respon sing cocog, sampeyan bisa nggawe pengalaman aplikasi sing lancar lan dipercaya kanggo pangguna.