Spring for GraphQL 1.3 RC1 发布

Spring for GraphQL 1.3 RC1 发布

💡 原文英文,约700词,阅读约需3分钟。
📝

内容提要

Spring for GraphQL 1.3 RC1已发布,基于GraphQL Java 22构建。该版本包括新功能、性能改进和对Defer和Stream指令的支持。增强了模式检查以检测不匹配和支持接口和联合。改进了映射到模式接口字段的功能,并增强了@EntityMapping的批量加载。WebSocket传输现在支持保持活动的PING消息。可以为GraphQL端点配置单独的Jackson编解码器。现在可以与Netflix DGS集成。GA版本将于5月21日发布,Spring I/O会议将有一个专门的会议讨论GraphQL Java 22和Spring for GraphQL 1.3。

🔎

延伸解读

升级前需关注的破坏性变更

Spring for GraphQL 1.3 RC1 基于 GraphQL Java 22 构建,而 GraphQL Java 22 包含破坏性变更。文章建议开发者利用 RC 阶段在自身环境中进行实验,以提前发现兼容性问题。因此,在升级到 1.3 正式版前,应仔细阅读 GraphQL Java 22 的发布说明,评估现有代码是否受影响,并做好测试与适配准备。

模式检查与接口联合类型的改进

新版本增强了模式检查功能,现在能够检测 @Argument 参数与模式字段参数之间的不匹配,并支持对接口和联合类型的检查。由于控制器方法返回类型无法提供运行时实际类型信息,此前无法完全检查这些类型。1.3 RC1 可根据命名约定透明发现对应 Java 类型,也提供了自定义选项,有助于减少运行时错误。

批量加载与 WebSocket 保活等实用增强

@EntityMapping 新增批量模式,可返回给定类型的所有实体,提升联邦场景下的加载效率。WebSocket 传输支持定期发送保活 PING 消息,服务端可通过 spring.graphql.websocket.keep-alive 属性启用,客户端通过构建器配置。此外,可为 GraphQL 端点单独配置 Jackson 编解码器,避免影响普通 HTTP 端点。

与 Netflix DGS 的集成及后续计划

Spring for GraphQL 团队与 Netflix DGS 团队持续合作,提供共同基础以支持两个框架运行。目前该集成已可供一般使用,并公布了路线图。正式版(GA)计划于 5 月 21 日发布,随后在 5 月 30-31 日的 Spring I/O 大会上有专门会议讨论 GraphQL Java 22 和 Spring for GraphQL 1.3。

❓

Q&A

Spring for GraphQL 1.3 RC1的主要新功能是什么?

该版本包括对Defer和Stream指令的支持、增强的模式检查、改进的映射功能和批量加载等新功能。

Spring for GraphQL 1.3 RC1是基于哪个版本的GraphQL构建的?

它是基于GraphQL Java 22构建的。

WebSocket传输在Spring for GraphQL 1.3 RC1中有哪些改进?

WebSocket传输现在支持定期发送保持活动的PING消息。

如何配置GraphQL端点的Jackson编解码器?

可以为GraphQL端点配置单独的Jackson编解码器,以避免对HTTP端点的副作用。

Spring for GraphQL 1.3 RC1的GA版本何时发布?

GA版本将于5月21日发布。

Spring I/O会议将讨论哪些内容?

会议将有一个专门的会议讨论GraphQL Java 22和Spring for GraphQL 1.3。

🏷️

标签

➡️

继续阅读