handleError.js 636 B

1234567891011121314151617181920212223242526
  1. const response = require('../responseHandler')
  2. module.exports = (callback) => async (req, res, next) => {
  3. try {
  4. await callback(req, res, next)
  5. } catch (error) {
  6. if (error.name === 'SequelizeValidationError') {
  7. return response.error(res, {
  8. message: 'ada error',
  9. error: error.errors.map((e) => e.message),
  10. })
  11. }
  12. if (error.code === 'ETIMEDOUT') {
  13. return res.status(408).send({
  14. message: 'Request Time Out',
  15. error: error.message || error,
  16. })
  17. }
  18. return response.error(res, {
  19. message: 'Terjadi error',
  20. error: error.message || error,
  21. })
  22. }
  23. }