Goa v3.27.0 为标准 Bearer token 身份验证添加了一流的支持,并在一些关键的地方改进了生成的代码,以便在实际项目启用更严格的类型和代码检查时使用。
Highlights
- 为使用标准
Authorization: Bearer格式的 API 添加了BearerSecurity和BearerToken,无需使用 JWT 特定 DSL 名称。这使得通用 bearer token API 的设计、生成的代码以及 OpenAPI 输出更加清晰。(#3925)
- 修复了针对实现
encoding.TextUnmarshaler的基于字符串的自定义字段类型的 HTTP 路径和查询参数生成问题,包括可选查询参数和验证边界情况。(#3926)
- 改进了 OpenAPI v2 模式生成,使命名参数和 header 别名能够映射到正确的原始模式。(#3919)
Fixes
- 在生成的示例客户端中恢复了
errors.Is(err, flag.ErrHelp)方法,以确保在 JSON-RPC 合并后,错误处理仍能正常工作(#3927)
- 对生成的 CLI
ParseEndpoint错误进行封装,以便使用wrapcheck的下游项目能保持生成的 CLI 符合代码规范。(#3928)
Dependencies And Examples
- 更新了 Goa 依赖项,包括 gRPC、OpenTelemetry
golang.org/x/*和相关的传递模块。
- 更新了此版本的示例和插件库,并发布了匹配的
v3.27.0标签。
详情可查看更新说明:https://github.com/goadesign/goa/releases/tag/v3.27.0