Files
egret-app-template/packages/server/src/middleware/errorHandler.ts

18 lines
556 B
TypeScript
Raw Normal View History

import {Request, Response, NextFunction} from "express";
import {ApiError} from "../types/api";
export function errorHandler(err: any, req: Request, res: Response, next: NextFunction) {
console.error(err);
if (err instanceof ApiError) {
return res.status(err.status).json({code: err.status, message: err.message, data: null});
}
// tsoa 内部生成的验证错误
if (err.status && err.status >= 400) {
return res.status(err.status).json({ message: err.message });
}
res.status(500).json({ message: 'Internal Server Error' });
}