त्रुटि ह्यान्डलिंगमा Express.js: प्रभावकारी रणनीति र प्रतिक्रिया सन्देशहरू

एप्लिकेसन विकासको बखत, सहज प्रयोगकर्ता अनुभव सुनिश्चित गर्न र अप्रत्याशित समस्याहरू कम गर्न त्रुटि ह्यान्डलिङ एक महत्त्वपूर्ण पक्ष हो। वातावरणमा Express.js, तपाईंसँग त्रुटिहरू ह्यान्डल गर्ने र प्रयोगकर्ताहरूलाई उपयुक्त प्रतिक्रिया सन्देशहरू प्रदान गर्ने थुप्रै तरिकाहरू छन्। यो कसरी हासिल गर्ने भन्ने बारे यहाँ एक गाइड छ:

Middleware ग्लोबल एरर ह्यान्डलिंगको लागि प्रयोग गर्दै

तपाईको एप्लिकेसनको मुख्य फाइलको middleware अन्त्यमा निम्न कोड थपेर विश्वव्यापी त्रुटि ह्यान्डलिङ सिर्जना गर्नुहोस् । app.js Express.js

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

विशिष्टका लागि त्रुटिहरू ह्यान्डलिंग Route

एक विशिष्ट मा route, तपाइँ त्रुटिहरू समात्न र उपयुक्त प्रतिक्रिया सन्देशहरू प्रदान गर्न ब्लक try प्रयोग गर्न सक्नुहुन्छ। catch

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

केन्द्रीकृत त्रुटि प्रयोग गर्दै Middleware

middleware विभिन्न बाट उत्पन्न त्रुटिहरू ह्यान्डल गर्न एक केन्द्रीकृत त्रुटि सिर्जना गर्नुहोस् 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');  
});  

एसिन्क्रोनस त्रुटिहरू ह्यान्डल गर्दै

एसिन्क्रोनस ह्यान्डलिङको अवस्थामा, next विश्वव्यापी त्रुटि ह्यान्डलिङमा त्रुटिहरू पास गर्न विधि प्रयोग गर्नुहोस् middleware ।

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

 

निष्कर्ष

Express.js त्रुटि ह्यान्डलिंग अनुप्रयोग विकासको अभिन्न अंग हो । प्रयोग गरेर middleware, विशिष्ट त्रुटिहरू ह्यान्डल गरेर, र उपयुक्त प्रतिक्रिया सन्देशहरू प्रदान गरेर, तपाईंले आफ्ना प्रयोगकर्ताहरूका लागि सहज र भरपर्दो अनुप्रयोग अनुभव सिर्जना गर्न सक्नुहुन्छ।