登录
首页 >  Golang >  Go问答

无法找到swaggo中的time.Duration类型定义,导致解析响应类型时发生错误

来源:stackoverflow

时间:2024-02-06 19:12:24 158浏览 收藏

怎么入门Golang编程?需要学习哪些知识点?这是新手们刚接触编程时常见的问题;下面golang学习网就来给大家整理分享一些知识点,希望能够给初学者一些帮助。本篇文章就来介绍《无法找到swaggo中的time.Duration类型定义,导致解析响应类型时发生错误》,涉及到,有需要的可以收藏一下

问题内容

使用 github.com/swaggo - go 中的 swagger 文档的库。 要生成尝试在终端中执行命令的文档 - swag init -g /cmd/svr/main.go -o ./cmd/svr/docs

执行上述命令时出现以下错误

2023/07/17 11:35:52 error parsing type definition 'response': cannot find type definition:      time.duration
   2023/07/17 11:35:52 parsecomment error in file desktop/work/api/api.go :cannot find type    definition: time.duration
model
type response struct {
    message        string        `json:"message,omitempty"`
    data           interface{}   `json:"data,omitempty"`
    timetaken      time.duration `json:"timetaken"`
} // @name response
// @Description get data from file
// @ID Get Data
// @Accept */*
// @Produce json
// @Success 200 {object} response
// @Router /getv1 [get]
func (a API) getData()  {
//get logic code 
}

swaggo librires 不支持 time.duration 类型吗?


正确答案


Swaggo 中,ParseDependency and ParseInternal 是与 swag init 命令一起使用的标志,用于控制 Swaggo 如何为 Go 代码生成文档。

  • 当您将 ParseDependency 标志与 swag init 一起使用时,Swaggo 将为您的项目所依赖的外部(第三方)包生成 Swagger 文档。如果您的代码使用外部包,并且您希望在 Swagger 文档中包含它们的文档,这会很有用。

  • 另一方面,ParseInternal 标志指示 Swaggo 仅为项目的内部包生成 Swagger 文档。它排除任何外部依赖项。当您只想专注于记录项目的内部 API 并且不想包含第三方依赖项的文档时,请使用此标志。

摘要:

如果该结构体定义在依赖包中,请使用 --parseDependency

如果该结构体已在主项目中定义,请使用 --parseInternal

如果您想包含内部类型/包和依赖项中的类型/包,则可以同时使用这两个标志:

理论要掌握,实操不能落!以上关于《无法找到swaggo中的time.Duration类型定义,导致解析响应类型时发生错误》的详细介绍,大家都掌握了吧!如果想要继续提升自己的能力,那么就来关注golang学习网公众号吧!

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