登录
首页 >  Golang >  Go问答

在 API 中指定“JSON 原始消息”的 Swagger 2.0 和 OpenApi 3.x 的方法

来源:stackoverflow

时间:2024-03-20 23:42:37 365浏览 收藏

在记录使用 Swagger 2.0 或 OpenApi 3.x 的 REST API 时,开发者可能会遇到包含 "Json.RawMessage" 字段的响应结构。由于 OpenAPI 规范中没有合适的 "数据类型",因此需要寻找替代方法来指定此类字段。

问题内容

我正在使用 Swagger 2.0 记录 REST API(用 Go 开发),API 响应使用的结构之一包括几个在 Go 中声明为“Json.RawMessage”类型的字段。我在 Swagger 规范中找不到任何合适的“数据类型”来涵盖这一点。我能想象的最接近的是“字节”格式的字符串。但这还差得很远。任何想法都会有很大帮助。


解决方案


json.RawMessage只是解析json消息的方式。它允许延迟解析某些字段或所有消息。

它不会影响响应的结构或格式,因此您无需以任何方式在 openapi 规范中指定它。

我唯一能猜测的是,某些字段可能具有不同的架构,从一个响应到另一个响应。所以你不能同时记录所有这些(据我所知openapi功能),你所能做的就是将其描述为一般的“object”。并在文档中的某处描述可能的模式。

到这里,我们也就讲完了《在 API 中指定“JSON 原始消息”的 Swagger 2.0 和 OpenApi 3.x 的方法》的内容了。个人认为,基础知识的学习和巩固,是为了更好的将其运用到项目中,欢迎关注golang学习网公众号,带你了解更多关于的知识点!

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>