@antelopejs/interface-api-util

中文文档
0.3.0发布于 2026/11/05Apache-2.0TypeScriptCommonJS零依赖构建来源已验证近 30 天下载 1.4万

API 处理器的羚羊JS 助手:请求断言,输入验证和速率限制

中文使用文档
文档目录8 节
  1. 它提供的东西
  2. 执行情况
  3. 安装
  4. 快开始
  5. 文档
  6. 兼容性
  7. 捐款
  8. 许可证

@antelopejs/interface-api-util

npm License Discord Docs

请求校验并限制处理器的帮助 @antelopejs/interface-api每一次失败都变成了 HTTPResult 错误反应 .

部分 羚羊JS用于 羚羊JS 隐形物,用于您的 PostgreSQL 、 MongoDB 或 RethinkDB 数据库的开源后台.

它提供的东西

  • assert(condition, code, message) 丢出一个 HTTPResult 当病情变质 并缩小其类型时,它保持.
  • assertValidation(body, validator) 运行同步验证器, 如 Zod parse然后把一个错误变成一个错误的响应, 400 默认.
  • @RateLimit(limit, windowMs) 在固定窗口中给每个客户端的处理器打电话并回答 429 更别提了.

执行情况

帮手在你的模块里运行。 他们需要一个模块提供的API接口:

模块页:1
@antelopejs/api执行 @antelopejs/interface-api 财务报告和审定财务报表 @antelopejs/interface-api-util

安装

将软件包添加到宣布路径的模块中 :

pnpm add @antelopejs/interface-api-util

然后在项目中添加 API 接口的执行 :

ajs project modules add @antelopejs/api

快开始

import {
  Controller,
  Get,
  HTTPResult,
  Parameter,
} from "@antelopejs/interface-api";
import { RateLimit, assert } from "@antelopejs/interface-api-util";

const BOOKS = new Map([["1", { title: "The Glass Meridian" }]]);

export class BookController extends Controller("/books") {
  @Get(":id")
  @RateLimit(100, 60_000)
  async getBook(@Parameter("id") id: string) {
    const book = BOOKS.get(id);
    assert(book, 404, "Book not found");
    return new HTTPResult(200, book);
  }
}

地点 @RateLimit 直接在路由装饰器下方. 放在上面, @RateLimit 当类被定义时会抛出.

文档

兼容性

模块宣布这些对等关系:

软件包支助测试过
@antelopejs/interface-api>=0.3.0 <1.0.00.2.0
@antelopejs/interface-core>=0.2.4 <1.0.00.4.0

捐款

读取 捐款额 在你打开拉动请求之前。 当地检查为:

pnpm install
pnpm lint
pnpm test

许可证

阿帕奇 - 2.0

版本与发布记录

@antelopejs/interface-api-util 共发布 9 个版本,首次发布于 2026/03/23;过去 12 个月发布了 9 个版本。最新版本附带 npm provenance 构建来源证明,可追溯到公开的 CI 构建记录。

版本发布日期距今
0.3.0latest2026/11/051 天前
0.2.02026/10/298 天前
0.1.32026/10/1720 天前
0.1.22026/07/213 个月前
0.1.12026/06/164 个月前
0.1.02026/06/104 个月前

关于 @antelopejs/interface-api-util 的常见问题

@antelopejs/interface-api-util 是什么?

API 处理器的羚羊JS 助手:请求断言,输入验证和速率限制

如何安装 @antelopejs/interface-api-util?

在项目目录运行 npm install @antelopejs/interface-api-util,或使用 pnpm add / yarn add / bun add。它还需要宿主项目提供 peer 依赖:@antelopejs/interface-api(>=0.3.0 <1.0.0)、@antelopejs/interface-core(>=0.2.4 <1.0.0)。npm 7 及以上与 pnpm 8 及以上默认会自动安装必需的 peer 依赖,Yarn 需要手动安装。

@antelopejs/interface-api-util 支持 TypeScript 吗?

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

@antelopejs/interface-api-util 支持 ESM 还是 CommonJS?

以 CommonJS 形式发布,可以直接 require();在 ES Module 项目中也可以用 import 引入(Node.js 会把 module.exports 作为默认导出)。

@antelopejs/interface-api-util 可以商用吗?

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

@antelopejs/interface-api-util 的下载量有多少?

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

@antelopejs/interface-api-util 还在维护吗?

最新版本 0.3.0 发布于 2026/11/05(1 天前);至今共发布 9 个版本,其中过去 12 个月发布了 9 个;首次发布于 2026/03/23。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。