分层学习
先运行服务,再理解 Context,再接入 validator、RPC、OpenAPI,文档顺序按学习路径组织,而不是只按模块堆叠。
先跑起一个 Fetch API 服务,再循序渐进接入 validator、typed RPC、OpenAPI 和生产中间件,不需要切换心智模型。
如果你是第一次使用 orva,建议按这个顺序学习:
如果你是从其他 Node 或 Fetch 框架迁移过来,建议尽早阅读 从 Express / Hono 迁移。
orva 擅长什么 统一以 Fetch API Request 进入应用,平台适配器只负责把宿主请求桥接进来。
json / form / query / param / header / cookie / text 输入统一进入类型安全校验链。
Context、Middleware、路由组合保持直观,业务逻辑集中在 handler 层。
校验元数据继续流向 RPC 与 OpenAPI,减少客户端、文档和运行时代码漂移。
import { createOrva } from 'orvajs';
import { serveNode } from 'orvajs/adapters/node';
import { requestId, secureHeaders } from 'orvajs/middlewares';
const app = createOrva()
.use(requestId(), secureHeaders())
.get('/health', (c) => c.json({
ok: true,
requestId: c.get('requestId'),
}));
serveNode(app, { port: 3000 });import { createOrva } from "orvajs";
import { serveNode } from "orvajs/adapters/node";
import { requestId, secureHeaders } from "orvajs/middlewares";
const app = createOrva().use(requestId(), secureHeaders()).get("/health", (c) => c.json({
ok: true,
requestId: c.get("requestId")
}));
serveNode(app, { port: 3e3 });| 目标 | 对应页面 |
|---|---|
| 跑起第一个服务 | 快速开始 |
| 理解请求模型 | Context 与响应 |
| 理解契约传播 | 类型链路 |
| 构建 REST API | REST API Recipe |
| 构建 typed client 工作流 | Typed RPC App Recipe |
| 组装生产可用的中间件栈 | Middleware Cookbook |
| 从其他框架迁移现有服务 | 迁移指南 |
| 查询模块和导出 | 参考资料 |