使用swaggo时如何移除Swagger UI中SignOutRequest模型的列表展示?
解决swaggo中隐藏模型列表但保留API参数描述的问题
正确解决方案
1. 给目标结构体添加全局忽略标签
修改types/user.go中的SignOutRequest结构体定义,在结构体末尾添加swaggerignore:"true"标签:
type SignOutRequest struct { RefreshToken string `json:"refresh_token"` } `swaggerignore:"true"`
这个标签会告诉swag工具:不将该结构体纳入Swagger页面的Models列表,但保留其在API接口参数中的结构描述。
2. 重新生成Swagger文档
执行swaggo的初始化命令,更新swagger配置文件:
swag init
生成完成后,Swagger页面的Models列表中将不再显示SignOutRequest,但/api/auth/sign-out接口的请求体区域依然会正常展示refresh_token字段的描述和结构要求。
为什么之前的方法无效
- 使用
//go:build swaggo_ignore构建标签会忽略整个文件,导致API接口中引用该结构体时无法识别,进而丢失参数描述。 - 仅给字段添加
swaggerignore:true标签只会隐藏对应字段,结构体本身仍会被加入Models列表。
内容的提问来源于stack exchange,提问作者Romay
相关产品推荐
相关产品推荐

