From 132aa3a888b9fd80325716ee8b4ddc9453e695c1 Mon Sep 17 00:00:00 2001 From: abearxiong Date: Fri, 20 Feb 2026 22:34:48 +0800 Subject: [PATCH] =?UTF-8?q?chore:=20=E5=9C=A8=20ServerBase=20=E7=B1=BB?= =?UTF-8?q?=E4=B8=AD=E6=B7=BB=E5=8A=A0=E8=87=AA=E5=AE=9A=E4=B9=89=E9=94=99?= =?UTF-8?q?=E8=AF=AF=E5=A4=84=E7=90=86=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/server/server-base.ts | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/server/server-base.ts b/src/server/server-base.ts index 5b62d1f..5630249 100644 --- a/src/server/server-base.ts +++ b/src/server/server-base.ts @@ -4,6 +4,7 @@ import * as cookie from './cookie.ts'; import { ServerType, Listener, OnListener, ServerOpts, OnWebSocketOptions, OnWebSocketFn, WebSocketListenerFun, ListenerFun, HttpListenerFun, WS } from './server-type.ts'; import { parseIfJson } from '../utils/parse.ts'; import { EventEmitter } from 'eventemitter3'; +import { CustomError } from '../result/error.ts'; type CookieFn = (name: string, value: string, options?: cookie.SerializeOptions, end?: boolean) => void; export type HandleCtx = { @@ -165,8 +166,13 @@ export class ServerBase implements ServerType { res.end(JSON.stringify(end)); } } catch (e) { - console.error(e); res.setHeader('Content-Type', 'application/json; charset=utf-8'); + if (CustomError.isError(e)) { + const parsedError = CustomError.parseError(e); + res.end(JSON.stringify(parsedError)); + return; + } + console.error(e); if (e.code && typeof e.code === 'number') { res.end(resultError(e.message || `Router Server error`, e.code)); } else {