跳至主内容
版本:9.x
非官方测试版翻译

本页面由 PageTurner AI 翻译(测试版)。未经项目官方认可。 发现错误? 报告问题 →

tRPC

End-to-end typesafe APIs made easy

codecovGitHub LicenseGitHub Stars

Watch Video

Alex / KATT and Prisma's Mahmoud Abdelwahab doing a deep dive into tRPC.

简介

tRPC allows you to easily build & consume fully typesafe APIs, without schemas or code generation.

随着 TypeScript 和静态类型在 Web 开发中日益成为最佳实践,API 层却成为一个主要痛点。我们需要更好的方法为 API 端点添加静态类型,并在客户端与服务器(或服务器之间)共享这些类型。为此我们创建了一个轻量级库,充分利用现代 TypeScript 的强大功能构建类型安全的 API。这就是 tRPC!

传统 REST 或 GraphQL 的替代方案

目前 GraphQL 是 TypeScript 中实现类型安全 API 的主流方案(它确实很棒!)。但由于 GraphQL 是语言无关的 API 规范,无法充分发挥 TypeScript 这类语言的潜力——进一步了解

如果项目采用全栈 TypeScript 构建,你可以在客户端和服务器之间直接共享类型,无需依赖代码生成。

特性

  • ✅  经过充分测试,生产环境可用。

  • 🧙‍♂️  客户端完整静态类型安全 & 自动补全(输入/输出/错误)。

  • 🐎  极速开发体验 - 无需代码生成、运行时臃肿或构建流程。

  • 🍃  轻量 - 零依赖,客户端占用极小。

  • 🐻  轻松集成现有项目。

  • 🔋  开箱即用 - 提供 React.js/Next.js/Express.js/Fastify 适配器。(但 tRPC 不限于 React,还有许多其他框架的社区适配器

  • 🥃  支持订阅功能。

  • ⚡️  请求批处理 - 同时发起的请求自动合并。

  • 👀  提供大量示例供参考或作为起点。