Files
modstagram-back/utils/asyncHandler.js
payacom 3f416a7a60 full
2026-08-31 20:45:41 +03:30

21 lines
533 B
JavaScript

function asyncHandler (handler) {
return (req, res, next) => {
Promise.resolve(handler(req, res, next)).catch((error) => {
console.error('[asyncHandler]', error)
if (res.headersSent) {
return next(error)
}
const status = error?.status || 500
return res.status(status).json({
message: error?.userMessage || 'خطای سرور',
en_message: error?.message || 'internal_error',
})
})
}
}
module.exports = asyncHandler
module.exports.asyncHandler = asyncHandler