Error Handling (API Errors)
Error Handling: مدیریت خطا در API ⚠️
Error Handling برای مدیریت خطاها در API استفاده میشه!
// Custom Error Class
class AppError extends Error {
constructor(message, statusCode) {
super(message);
this.statusCode = statusCode;
this.isOperational = true;
}
}
// Error Handler Middleware
const errorHandler = (err, req, res, next) => {
const statusCode = err.statusCode || 500;
const message = err.message || 'Internal Server Error';
res.status(statusCode).json({
error: {
message,
status: statusCode,
...(process.env.NODE_ENV === 'development' && { stack: err.stack })
}
});
};
// استفاده
app.get('/users/:id', async (req, res, next) => {
try {
const user = await User.findById(req.params.id);
if (!user) {
throw new AppError('User not found', 404);
}
res.json(user);
} catch (error) {
next(error);
}
});
app.use(errorHandler);
✅ یاد گرفتید: Error Handling برای user experience بهتر ضروریه!
آماده رفتن به درس بعدی هستید؟
این درس را به پایان رساندید و میتوانید به درس بعدی بروید.