类:MCPAuthError
所有 mcp-auth 错误的基类。
它为处理与 MCP 认证 (Authentication) 和授权 (Authorization) 相关的错误提供了标准化方式。
继承自
Error
被以下类继承
构造函数
构造函数
new MCPAuthError(code: string, message: string): MCPAuthError;
参数
code
string
错误代码,采用 snake_case 格式。
message
string
对错误的人类可读描述。
返回
MCPAuthError
重写自
Error.constructor
属性
cause?
optional cause: unknown;
继承自
Error.cause
code
readonly code: string;
错误代码,采用 snake_case 格式。
message
message: string;
继承自
Error.message
name
name: string = 'MCPAuthError';
重写自
Error.name
stack?
optional stack: string;
继承自
Error.stack
stackTraceLimit
static stackTraceLimit: number;
Error.stackTraceLimit
属性指定堆栈跟踪收集的堆栈帧数量(无论是由 new Error().stack
还是 Error.captureStackTrace(obj)
生成)。
默认值为 10
,但可以设置为任何有效的 JavaScript 数字。更改后将影响之后捕获的所有堆栈跟踪。
如果设置为非数字值,或设置为负数,则堆栈跟踪不会捕获任何帧。
继承自
Error.stackTraceLimit
方法
toJson()
toJson(showCause: boolean): Record<string, unknown>;
将错误转换为适合 HTTP 响应的 JSON 格式。
参数
showCause
boolean
= false
是否在 JSON 响应中包含错误原因。默认为 false
。
返回
Record
<string
, unknown
>
captureStackTrace()
static captureStackTrace(targetObject: object, constructorOpt?: Function): void;
在 targetObject
上创建一个 .stack
属性,当访问时返回一个字符串,表示调用 Error.captureStackTrace()
时代码中的位置。
const myObject = {};
Error.captureStackTrace(myObject);
myObject.stack; // 类似于 `new Error().stack`
跟踪的第一行将以 ${myObject.name}: ${myObject.message}
为前缀。
可选的 constructorOpt
参数接受一个函数。如果提供,则生成的堆栈跟踪中将省略 constructorOpt
及其以上的所有帧。
constructorOpt
参数用于隐藏错误生成的实现细节。例如:
function a() {
b();
}
function b() {
c();
}
function c() {
// 创建一个没有堆栈跟踪的错误以避免重复计算堆栈。
const { stackTraceLimit } = Error;
Error.stackTraceLimit = 0;
const error = new Error();
Error.stackTraceLimit = stackTraceLimit;
// 捕获 b 以上的堆栈跟踪
Error.captureStackTrace(error, b); // 堆栈跟踪中不包含 c 和 b
throw error;
}
a();
参数
targetObject
object
constructorOpt?
Function
返回
void
继承自
Error.captureStackTrace
prepareStackTrace()
static prepareStackTrace(err: Error, stackTraces: CallSite[]): any;
参数
err
Error
stackTraces
CallSite
[]
返回
any
参考
https://v8.dev/docs/stack-trace-api#customizing-stack-traces
继承自
Error.prepareStackTrace