首页
/ oRPC v1.1.0 发布:OpenAPI 参考插件与 React Native 支持

oRPC v1.1.0 发布:OpenAPI 参考插件与 React Native 支持

2025-06-24 19:24:35作者:殷蕙予

oRPC 是一个现代化的 TypeScript RPC 框架,旨在简化客户端和服务器之间的通信。它提供了类型安全的 API 调用体验,让开发者能够专注于业务逻辑而不是通信细节。最新发布的 v1.1.0 版本带来了两个重要特性:OpenAPI 参考插件和部分 React Native 支持。

OpenAPI 参考插件

新版本引入了 OpenAPI 参考插件,这是一个强大的工具,可以自动为你的 oRPC API 生成美观的 OpenAPI 参考客户端界面。这个功能基于 Scalar 实现,为开发者提供了直观的 API 文档浏览和测试体验。

使用这个插件非常简单,只需要在 OpenAPIHandler 中配置即可:

const handler = new OpenAPIHandler(router, {
  plugins: [
    new OpenAPIReferencePlugin({
      schemaConverters: [
        new ZodToJsonSchemaConverter(),
      ],
      specGenerateOptions: {
        info: {
          title: 'ORPC Playground',
          version: '1.0.0',
        },
      },
    }),
  ]
})

这个插件支持多种模式转换器,如 ZodToJsonSchemaConverter,可以将你的类型定义转换为 OpenAPI 规范。生成的文档不仅美观,还支持交互式测试,大大提升了 API 的开发和使用体验。

React Native 部分支持

v1.1.0 版本还引入了对 React Native 的部分支持。虽然 React Native 自带了 Fetch API,但其功能有一定限制。oRPC 现在可以适配这些限制,让开发者能够在 React Native 应用中使用基本的 RPC 功能。

需要注意的是,由于 React Native 的 Fetch API 实现限制,oRPC 的一些高级特性如文件传输、Blob 处理和异步迭代器对象目前还不支持。开发者可以关注 React Native 官方对 Stream 支持的进展来了解这些功能何时可用。

其他改进

除了上述主要特性外,v1.1.0 还包含了一些值得注意的改进:

  1. 批量插件现在能够自动从链接推断上下文,简化了批量请求的处理逻辑
  2. 服务器中间件现在支持更精确的类型推断,提升了类型安全性
  3. 标准服务器适配器现在能够更好地处理 React Native 的特殊情况

这些改进使得 oRPC 在各种场景下的使用更加顺畅,特别是对于需要同时支持 Web 和移动应用的开发者来说,这些增强功能将大大提升开发效率。

oRPC 继续保持着对开发者友好的设计理念,通过类型安全和简洁的 API 帮助开发者构建可靠的分布式系统。v1.1.0 的这些新特性进一步扩展了它的适用场景,使其成为现代 TypeScript 项目中值得考虑的 RPC 解决方案。

登录后查看全文
热门项目推荐
相关项目推荐

项目优选

收起
kernelkernel
deepin linux kernel
C
27
11
docsdocs
OpenHarmony documentation | OpenHarmony开发者文档
Dockerfile
466
3.47 K
nop-entropynop-entropy
Nop Platform 2.0是基于可逆计算理论实现的采用面向语言编程范式的新一代低代码开发平台,包含基于全新原理从零开始研发的GraphQL引擎、ORM引擎、工作流引擎、报表引擎、规则引擎、批处理引引擎等完整设计。nop-entropy是它的后端部分,采用java语言实现,可选择集成Spring框架或者Quarkus框架。中小企业可以免费商用
Java
10
1
leetcodeleetcode
🔥LeetCode solutions in any programming language | 多种编程语言实现 LeetCode、《剑指 Offer(第 2 版)》、《程序员面试金典(第 6 版)》题解
Java
65
19
flutter_flutterflutter_flutter
暂无简介
Dart
715
172
giteagitea
喝着茶写代码!最易用的自托管一站式代码托管平台,包含Git托管,代码审查,团队协作,软件包和CI/CD。
Go
23
0
kernelkernel
openEuler内核是openEuler操作系统的核心,既是系统性能与稳定性的基石,也是连接处理器、设备与服务的桥梁。
C
203
82
RuoYi-Vue3RuoYi-Vue3
🎉 (RuoYi)官方仓库 基于SpringBoot,Spring Security,JWT,Vue3 & Vite、Element Plus 的前后端分离权限管理系统
Vue
1.27 K
695
rainbondrainbond
无需学习 Kubernetes 的容器平台,在 Kubernetes 上构建、部署、组装和管理应用,无需 K8s 专业知识,全流程图形化管理
Go
15
1
apintoapinto
基于golang开发的网关。具有各种插件,可以自行扩展,即插即用。此外,它可以快速帮助企业管理API服务,提高API服务的稳定性和安全性。
Go
22
1