const logger = require('../services/logger'); function errorHandler(err, req, res, next) { logger.error('Unhandled error', { error: err.message, stack: err.stack, path: req.path, method: req.method, ip: req.ip }); if (err.type === 'entity.parse.failed') { return res.status(400).json({ error: '无效的JSON格式' }); } // express-validator 验证失败时直接返回400,不会抛到这里 // 此检查保留作为其他验证库的安全网 res.status(err.status || 500).json({ error: process.env.NODE_ENV === 'production' ? '服务器内部错误' : err.message }); } module.exports = errorHandler;