অ্যাপ্লিকেশন বিকাশের সময়, একটি মসৃণ ব্যবহারকারীর অভিজ্ঞতা নিশ্চিত করতে এবং অপ্রত্যাশিত সমস্যাগুলি হ্রাস করার জন্য ত্রুটি পরিচালনা একটি গুরুত্বপূর্ণ দিক। পরিবেশে 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, নির্দিষ্ট ত্রুটিগুলি পরিচালনা করে এবং উপযুক্ত প্রতিক্রিয়া বার্তা প্রদান করে, আপনি আপনার ব্যবহারকারীদের জন্য একটি মসৃণ এবং নির্ভরযোগ্য অ্যাপ্লিকেশন অভিজ্ঞতা তৈরি করতে পারেন।