首页
/ Hey API OpenAPI TypeScript SDK 0.72.0版本发布:增强类结构支持与多项修复

Hey API OpenAPI TypeScript SDK 0.72.0版本发布:增强类结构支持与多项修复

2025-06-18 12:35:21作者:鲍丁臣Ursa

Hey API OpenAPI TypeScript SDK是一个强大的工具,能够将OpenAPI规范转换为类型安全的TypeScript代码,特别适合前端开发者快速构建与后端API交互的客户端。该项目通过自动化生成客户端代码,显著提高了开发效率并减少了手动编写API客户端时可能出现的错误。

主要特性:类结构支持增强

0.72.0版本引入了一个重要的新特性——classStructure选项,它为基于类的SDK生成提供了更灵活的结构控制。这个改进主要针对使用operationId来组织API方法的情况。

在之前的版本中,生成的类结构相对固定,而现在开发者可以通过operationId中的点(.)或斜杠(/)符号来自动创建嵌套的类结构。例如,一个operationIduser.profile.get的API方法,现在可以自动生成在User类的Profile子类中的get方法。

如果开发者希望保持原有的扁平结构,只需将classStructure选项设置为off即可。这个改进使得生成的代码结构更加符合实际业务逻辑的组织方式,提高了代码的可读性和维护性。

重要问题修复

本次更新包含了多个关键修复,提升了工具的稳定性和可用性:

  1. 崩溃报告提示:新增了崩溃报告提示功能,当工具遇到意外错误时,会提示用户提交错误报告,帮助开发团队更快地发现和解决问题。

  2. 属性名称处理:修复了propertyNames关键字的处理问题,现在能够正确解析包含此关键字的OpenAPI规范。

  3. BigInt默认值生成:修正了BigInt类型默认值生成不正确的问题,确保生成的验证代码能够正确处理大整数类型。

  4. 嵌套只读对象处理:改进了对嵌套内联对象中只读字段的处理,现在能够正确识别和生成包含readOnly/writeOnly字段的复杂嵌套对象结构。

技术实现细节

在底层实现上,这些改进涉及到了OpenAPI规范的解析逻辑、TypeScript代码生成策略以及验证器生成机制等多个方面。特别是类结构支持的增强,需要对operationId进行智能解析,并根据解析结果动态构建类层次结构,这展示了工具对复杂API设计的良好适应性。

对于验证器生成部分,修复了类型系统与运行时验证之间的不一致问题,特别是对于JavaScript中相对较新的BigInt类型的支持,确保了生成的代码能够在各种运行时环境下正确工作。

升级建议

对于现有用户,建议评估新版本中的类结构生成功能是否适合您的项目。如果您现有的代码依赖于之前的扁平结构,可以通过配置保持原有行为。对于新项目,推荐尝试新的类结构生成功能,它能够带来更好的代码组织方式。

所有用户都建议升级,特别是如果您遇到了与属性名称处理、BigInt类型或嵌套对象相关的问题,这些修复将直接改善您的开发体验。

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

最新内容推荐

项目优选

收起
ohos_react_nativeohos_react_native
React Native鸿蒙化仓库
C++
176
261
RuoYi-Vue3RuoYi-Vue3
🎉 (RuoYi)官方仓库 基于SpringBoot,Spring Security,JWT,Vue3 & Vite、Element Plus 的前后端分离权限管理系统
Vue
858
509
openGauss-serveropenGauss-server
openGauss kernel ~ openGauss is an open source relational database management system
C++
129
182
openHiTLSopenHiTLS
旨在打造算法先进、性能卓越、高效敏捷、安全可靠的密码套件,通过轻量级、可剪裁的软件技术架构满足各行业不同场景的多样化要求,让密码技术应用更简单,同时探索后量子等先进算法创新实践,构建密码前沿技术底座!
C
257
300
ShopXO开源商城ShopXO开源商城
🔥🔥🔥ShopXO企业级免费开源商城系统,可视化DIY拖拽装修、包含PC、H5、多端小程序(微信+支付宝+百度+头条&抖音+QQ+快手)、APP、多仓库、多商户、多门店、IM客服、进销存,遵循MIT开源协议发布、基于ThinkPHP8框架研发
JavaScript
93
15
Cangjie-ExamplesCangjie-Examples
本仓将收集和展示高质量的仓颉示例代码,欢迎大家投稿,让全世界看到您的妙趣设计,也让更多人通过您的编码理解和喜爱仓颉语言。
Cangjie
331
1.08 K
HarmonyOS-ExamplesHarmonyOS-Examples
本仓将收集和展示仓颉鸿蒙应用示例代码,欢迎大家投稿,在仓颉鸿蒙社区展现你的妙趣设计!
Cangjie
397
370
note-gennote-gen
一款跨平台的 Markdown AI 笔记软件,致力于使用 AI 建立记录和写作的桥梁。
TSX
83
4
CangjieCommunityCangjieCommunity
为仓颉编程语言开发者打造活跃、开放、高质量的社区环境
Markdown
1.07 K
0
kernelkernel
deepin linux kernel
C
22
5