@authup/errors

中文文档
1.0.0-beta.73发布于 2026/11/02Apache-2.0TypeScriptES Module构建来源已验证近 30 天下载 4167

Authup的出错分类,出错代码和代码到HTTP状态映射,其中有幸存了JSON的卫士.

中文使用文档
文档目录8 节
  1. 合适的话
  2. 安装
  3. 使用量
  4. 丢入并映射到状态
  5. 识别出过线的错误
  6. API 密码
  7. 页:1
  8. 许可证

Authup logo

@ authup/ 错误

Authup的出错分类,出错代码和代码到HTTP状态映射,其中有幸存了JSON的卫士.
一个用于服务器,HTTP客户端和控制台的错误词汇,因此一个呼叫器在代码上分出,而不是消息.

npm version CI License: Apache-2.0

安装 • 妇女 使用量 • 妇女 API 密码 • 妇女 文档


合适的话

每个丢出或检查出错的工作空间都会导入此软件包: 服务器丢出其类, HTTP 错误的中间软件映射它们 code 地位,以及 @authup/core-http-kit 控制台从响应机构读出同样的代码。 当您自己的代码调用 Authup API 时直接安装它, 并想要在什么出错上分支(isEntityNotFoundError(error), (中文(简体) ), error.code === ErrorCode.JWT_EXPIRED),或者当您在Authup的服务器包上构建一个服务,并想要抛出同样的中间软件所理解的错误时.

安装

npm install @authup/errors

仅限无害环境管理。 节点.js >=26.0.0它有一个运行中的依赖, @ebec/core,和无节点专用API.

使用量

丢入并映射到状态

import { EntityNotFoundError, ErrorCode, httpStatusFromCode } from '@authup/errors';

const error = new EntityNotFoundError({ entity: 'user' });

error.message; // 'The user was not found.'
error.code === ErrorCode.ENTITY_NOT_FOUND; // true
httpStatusFromCode(error.code); // 404
httpStatusFromCode(ErrorCode.REGISTRATION_DISABLED); // 400, the fallback
  • 每门课都延长 AuthupError 并设定自己的 code 和默认消息。 通过一个字符串来替换信件,或者一个选项对象(message, (中文(简体) ), code, (中文(简体) ), data, (中文(简体) ), cause,以及 entity 实体类别).
  • data 合并为JSON表格,这就是 LoginThrottledError, (中文(简体) ), MfaThrottledError 财务报告和审定财务报表 DeviceVerificationThrottledError 携带 retryAfter (秒)给客户.
  • httpStatusFromCode(code, fallback = 400) 来自 ERROR_CODE_TO_STATUS;没有列出的任何代码都会有倒计时. codeFromHttpStatus 错误来自国外来源.

识别出过线的错误

import { isAuthupError, isEntityNotFoundError, serializeError } from '@authup/errors';

declare const error: Error;

const body = JSON.parse(JSON.stringify(serializeError(error)));

if (isEntityNotFoundError(body)) {
    // body.code === 'entity_not_found'
}

if (isAuthupError(body)) {
    console.log(body.code, body.message);
}
  • serializeError 电话 toJSON() 当错误有一个,否则会扩散自己的属性加 name 财务报告和审定财务报表 message。当错误变成反应机构时使用它.
  • 警卫不需要了 instanceof。每类邮票 a Symbol.for(...) 标记,和 toJSON() 将标记链写为同一键下的字符串,所以一个守护者会识别活出错误和解析过的JSON.
  • normalizeError(value) 将任何抛出的东西(字符串、数字、对象)变成真实 Error。 。 。 .

API 密码

导出仁爱目的
AuthupError类基类: a BaseError 从 @ebec/core 带有可选 data 记录合并为 toJSON()
BadRequestError, (中文(简体) ), ValidationError类bad_request (400个)
UnauthorizedError, (中文(简体) ), AuthHeaderError, (中文(简体) ), BearerTokenMalformedError类identity_unauthorized, (中文(简体) ), unsupported_auth_header_type, (中文(简体) ), bearer_token_malformed (401) (中文(简体) )
EntityNotFoundError, (中文(简体) ), EntityConflictError, (中文(简体) ), EntityInactiveError, (中文(简体) ), EntityCredentialsInvalidError类entity_not_found (404个), entity_conflict (409个), entity_inactive, (中文(简体) ), invalid_credentials (400);选项 entity 在信件中指定实体
LoginThrottledError, (中文(简体) ), MfaThrottledError, (中文(简体) ), DeviceVerificationThrottledError类429辆 data.retryAfter
InternalError类internal_error (500个)
isError, (中文(简体) ), isAuthupError, (中文(简体) ), is<Class>Error函数鸭式警卫,每班1名
ErrorCode语句每个代码 Authup 发布:通用,实体,身份,JWT,JWK,OAuth2,许可和政策代码
ERROR_CODE_TO_STATUS, (中文(简体) ), httpStatusFromCode, (中文(简体) ), codeFromHttpStatusconst, 函数代码到状态映射
serializeError, (中文(简体) ), normalizeError函数JSON边界和未知价值正常化
AuthupErrorOptions, (中文(简体) ), AuthupErrorInput, (中文(简体) ), AuthupEntityErrorOptions, (中文(简体) ), AuthupEntityErrorInput类型构造输入类型
matchesInstanceof, (中文(简体) ), hasInstanceof, (中文(简体) ), markInstanceof, (中文(简体) ), serializeInstanceofChain, (中文(简体) ), INSTANCEOF_PROPERTY, (中文(简体) ), BASE_ERROR_INSTANCE再出口这个 @ebec/core 标记原始的,用于您自己的错误类

每个类别还输出其标记符号(ENTITY_NOT_FOUND_ERROR_INSTANCE(中文(简体) ).

页:1

  • isAuthupError 需要标记链. 一个没有 @instanceof 列表(手建) { code, message },或者旧服务器上的尸体)不是 AuthupError即使它带有Authup代码。 读取 body.code 直接在这种情况下.
  • 一个班级警卫也接受平原代码. isEntityNotFoundError 对任何 AuthupError 谁 code 实值 entity_not_found不仅在那种情况下. ValidationError 财务报告和审定财务报表 BadRequestError 份额 bad_request这样 isValidationError 财务报告和审定财务报表 isBadRequestError 无论是哪门课都一样.
  • 状态存在于映射中,而非出错. 没有类包含 HTTP 状态; 代码未在 ERROR_CODE_TO_STATUS 默认为 400.

许可证

由 所制

现按 Apache 2.0 许可证。 。 。 .

版本与发布记录

@authup/errors 共发布 48 个版本,首次发布于 2025/01/21;过去 12 个月发布了 44 个版本。最新版本附带 npm provenance 构建来源证明,可追溯到公开的 CI 构建记录。

版本发布日期距今
1.0.0-beta.73latest2026/11/025 天前
1.0.0-beta.722026/10/2711 天前
1.0.0-beta.712026/10/2018 天前
1.0.0-beta.702026/10/1919 天前
1.0.0-beta.692026/10/1424 天前
1.0.0-beta.682026/09/251 个月前

关于 @authup/errors 的常见问题

@authup/errors 是什么?

Authup的出错分类,出错代码和代码到HTTP状态映射,其中有幸存了JSON的卫士.

如何安装 @authup/errors?

在项目目录运行 npm install @authup/errors,或使用 pnpm add / yarn add / bun add。

@authup/errors 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

@authup/errors 支持 ESM 还是 CommonJS?

以 ES Module 形式发布,推荐使用 import 引入。在 CommonJS 项目中,Node.js 20.19+ / 22.12+ 可以直接 require() 不含顶层 await 的 ES Module,更早的版本需要改用动态 import()。

@authup/errors 需要什么版本的 Node.js?

package.json 的 engines 字段要求 Node.js >=26.0.0。版本不符时 npm 默认只给出警告,开启 engine-strict 后会拒绝安装。

@authup/errors 可以商用吗?

@authup/errors 使用 Apache-2.0 许可。宽松许可:允许商业使用、修改和再分发,并附带明确的专利授权;分发时需保留许可与 NOTICE 文件,修改过的文件要注明改动。以上为概括,不构成法律意见,请以许可原文为准。

@authup/errors 的下载量有多少?

根据 npm 官方下载统计,@authup/errors 在 2026/10/07 – 2026/11/05 这 30 天内被下载 4,167 次,日均约 139 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@authup/errors 还在维护吗?

最新版本 1.0.0-beta.73 发布于 2026/11/02(5 天前);至今共发布 48 个版本,其中过去 12 个月发布了 44 个;首次发布于 2025/01/21。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。