v5 文档 | v4 -> v5 迁移指南 | Discord
一个超轻量级的API微型路由器,适用于大小很重要的场景(例如Cloudflare Workers)。
特性
- 体积小。路由器从约450字节到约970字节的全功能版本(比Express.js小约240-500倍)。
- TypeScript。为任何环境提供强大(且灵活)的类型支持。
- 路由解析和查询参数解析。
- 中间件。使用我们的或编写你自己的。
- 100%测试覆盖率。为生产环境提供坚如磐石的可靠性。
- 专为无服务器设计(但可在任何地方使用)。
- 无假设。可以返回任何内容;可以传入任何内容。
- 面向未来。尚未发明的HTTP方法也可以使用。
示例
import { AutoRouter } from 'itty-router' // ~1kB
const router = AutoRouter()
router
.get('/hello/:name', ({ name }) => `Hello, ${name}!`)
.get('/json', () => [1,2,3])
.get('/promises', () => Promise.resolve('foo'))
export default router
// 就这么简单 ^-^
需要帮助?
完整的API文档可在itty.dev上找到,或者加入我们的Discord频道,与社区成员聊天以获得快速帮助!
加入讨论!
有问题?建议?想法?投诉?想送礼篮?加入我们的Discord!
特别感谢 :heart:
随着社区和贡献者名单的增长(因此在这里列出个人名单不再容易维护),我想感谢你们每一个人,使itty比它最初的简单起源更加强大。你今天看到的健壮性、每个用于功能的字节的仔细考虑、API的选择、代码优化本身...都要归功于社区的努力和反馈。我特别要感谢核心贡献者和PR作者,以及itty Discord群组中的优秀成员,感谢他们不知疲倦地完善这个小野兽并回答社区问题。