在Debian系统上生成Swagger文档的步骤如下:
首先,确保你的系统已经安装了Go语言环境。然后,使用以下命令安装Swagger相关的工具:
sudo apt update
sudo apt install golang
接下来,安装swag
命令行工具:
go install github.com/swaggo/swag/cmd/swag@latest
在项目的根目录下,执行以下命令来初始化Swagger文档生成:
swag init
这个命令会在项目根目录下生成一个名为docs
的文件夹,其中包含了Swagger的文档。
在你的Go代码中,需要添加Swagger注释来描述你的API。例如:
// AdminLogin godoc
// @Summary 管理员登陆
// @Description 管理员登陆
// @Tags 管理员接口
// @ID /admin_login/login
// @Accept json
// @Produce json
// @Param body body dto.AdminLoginInput true "body" # [值得名称] body [值得类型] [是否必传] "[返回值名称]"
// @Success 200 {object} middleware.Response{data=dto.DemoInput} "success"
// @Router /admin_login/login [post]
func (adminlogin *AdminLoginController) AdminLogin(ctx *gin.Context) {
// 定义传入数据结构
params := &dto.AdminLoginInput{}
if err := params.BindValidParam(ctx); err != nil {
middleware.ResponseError(ctx, 1001, err)
return
}
out := &dto.AdminLoginOutput{Token: params.UserName}
middleware.ResponseSuccess(ctx, out)
}
在项目根目录下,执行以下命令来生成Swagger文档:
swag init
这将生成Swagger的文档,并放置在之前生成的docs
文件夹中。
最后,你需要启动你的Web服务,以便可以通过浏览器访问Swagger文档。如果你的项目使用的是Gin框架,可以参考以下示例代码:
package main
import (
"github.com/gin-gonic/gin"
ginSwagger "github.com/swaggo/gin-swagger"
swaggerFiles "github.com/swaggo/files"
)
func main() {
router := gin.Default()
router.Static("/html", "./public")
router.GET("/swagger/*any", ginSwagger.WrapHandler(swaggerFiles.Handler))
router.Run(":" + _const.HTTP_SERVER_PORT)
}
确保替换_const.HTTP_SERVER_PORT
为你的服务端口,然后启动你的服务。
启动服务后,你可以通过浏览器访问http://localhost:[设置端口]/swagger/index.html
来查看生成的Swagger文档。
以上步骤应该可以帮助你在Debian系统上成功生成和查看Swagger文档。如果在执行过程中遇到任何问题,请检查你的代码是否正确添加了Swagger注释,并确保所有依赖都已正确安装。