@expressots/adapter-express

中文文档
4.3.0发布于 2026/09/13MITTypeScriptESM + CJS近 30 天下载 102.1万

Expressots - 现代,快活,轻活的节点s网络框架 (@adapter-expression)

中文使用文档
文档目录10 节
  1. 安装
  2. 此套件会做什么
  3. 快来看
  4. 所需资源
  5. 预览模块
  6. Cloudflare 绑定提供者
  7. 文档
  8. 捐款
  9. 支持项目
  10. 许可证
ExpressoTS

@ expressots/ adapter- express

Express HTTP ExpressoTS的自适应器. 将框架核心连接到 Express.js 服务器引擎.

npm License Discord Build

文档 • 妇女 开始 • 妇女 项目委员会 • 妇女 社区


安装

npm i @expressots/adapter-express

此套件会做什么

这个适配器桥接了ExpressoTS Core和Express.js. 它提供HTTP服务器执行、路由注册、中间软件管道和 App 将一切连接在一起 并列安装 @expressots/core 运行特快.

快来看

import { AppExpress } from "@expressots/adapter-express";
import { AppContainer, CreateModule, bootstrap } from "@expressots/core";
import { AppController } from "./app.controller";

export class App extends AppExpress {
  private readonly container: AppContainer = this.configContainer([CreateModule([AppController])]);

  async configureServices(): Promise<void> {
    // register middleware, interceptors, error handlers
  }
}

void bootstrap(App); // starts on process.env.PORT or 3000

bootstrap() 构建容器,运行 AppExpress 生命周期钩子( c)globalConfiguration, (中文(简体) ), configureServices, (中文(简体) ), postServerInitialization),启动HTTP服务器,并在SIGINT / SIGTERM上电线优雅地关闭.

所需资源

  • Express 5 (适配器的目标为Express 5 API;车体剖析使用Express 5本土剖析器)
  • 节点.js . 20.19.0
  • @expressots/studio-agent 是一个可选的对等依赖:安装它以启用ExpressotS Studio集成,或者省去它而不影响适配器.

预览模块

这个 micro-api 模块(gateway, service-mesh,无服务器,队列)是预览质量:它的API可能会改变. 用于实验,而不是生产关键路径.

Cloudflare 绑定提供者

在Cloudflare Workers上,一个微程序可以通过打入的符号而不是读取来解决其绑定(KV, D1, R2, 队列) env 每个处理器中的名称:

import {
  cloudflareAdapter,
  cloudflareBindings,
  type CloudflareRequest,
  micro,
} from "@expressots/adapter-express";

interface Env {
  SETTINGS: KVNamespace;
  DB: D1Database;
}

const bindings = cloudflareBindings<Env>();
const Settings = bindings.kv("SETTINGS");
const Database = bindings.d1("DB");

const app = micro<CloudflareRequest<Env>>({ showBanner: false, studio: { enabled: false } });

app.get("/theme", async (req) => ({
  theme: await req.services.get(Settings).get("theme"),
}));

app.get("/items", (req) => req.services.get(Database).prepare("SELECT * FROM items").all());

export default cloudflareAdapter<Env>(app);
  • bindings.kv, (中文(简体) ), bindings.d1, (中文(简体) ), bindings.r2 财务报告和审定财务报表 bindings.queue 归还被冻结的代币,按种类和名称进行纪念. 托肯斯只携带一种名称,所以在模块范围创建它们对于工人来说是安全的.
  • req.services.get(token) 从当前请求中读取约束 env 每次; 请求之间没有缓存 . req.services.has(token) 报告是否有约束. req.cloudflare.env 仍可直接进入.
  • 约束缺失 env 筹集 CloudflareBindingNotFoundError (单位:千美元)code: "EXPRESSOTS_CLOUDFLARE_BINDING_NOT_FOUND"),它像其他任何错误一样通过应用程序的错误处理器流出. 继承对象属性, 如 toString 从来没有被视为约束.
  • 绑定类型在结构上与 Cloudflare 运行时接口相匹配(例如, KV 命名空间被识别为 getWithMetadata) (中文(简体) ). 有明确的 Env,每个工厂只接受其价值与同类相符的名称,一个匹配多个种类的值被拒为模糊. 没有 Env 类型中,任意字符串被接受,用于其绑定物被动态配置的应用程序.

供应商在Miniflare的KV、D1、R2和Quee执行中被核实,一个捆绑的门将其成本保持在1KiB gzip以下;两者在CI中运行 test/cloudflare-bindings-worker。 。 。 .

文档

指南、API参考、架构模式和实例访问 doc.expresso-ts.com (英语)。 。 。 .

捐款

欢迎来到快递社区 见 贡献指南 如何参与.

支持项目

许可证

麻省理工学院. 见 自由主义。 。 。 .

版本与发布记录

@expressots/adapter-express 共发布 35 个版本,首次发布于 2023/09/13;过去 12 个月发布了 12 个版本。

版本发布日期距今
4.3.0latest2026/09/132 个月前
4.2.12026/08/043 个月前
4.2.02026/08/043 个月前
4.1.12026/07/283 个月前
4.1.02026/07/283 个月前
4.0.02026/07/173 个月前

其他发布通道:beta → 3.0.0-beta.4.2,preview → 4.0.0-preview.1,next → 4.0.0-preview.3.4。

关于 @expressots/adapter-express 的常见问题

@expressots/adapter-express 是什么?

Expressots - 现代,快活,轻活的节点s网络框架 (@adapter-expression)

如何安装 @expressots/adapter-express?

在项目目录运行 npm install @expressots/adapter-express,或使用 pnpm add / yarn add / bun add。

@expressots/adapter-express 支持 TypeScript 吗?

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

@expressots/adapter-express 支持 ESM 还是 CommonJS?

同时提供 ES Module 与 CommonJS 入口,import 和 require() 都可以使用,打包工具会自动选择合适的版本。

@expressots/adapter-express 需要什么版本的 Node.js?

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

@expressots/adapter-express 可以商用吗?

@expressots/adapter-express 使用 MIT 许可。宽松许可:允许商业使用、修改和再分发,通常只需在分发时保留原版权与许可声明。以上为概括,不构成法律意见,请以许可原文为准。

@expressots/adapter-express 的下载量有多少?

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

@expressots/adapter-express 还在维护吗?

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