beego的API自动化文档其实质就是使用swagger,但是功能还不是很完善。在使用时还有很多写法限制,否则自动化文档不会解析。例如:在配置接口路由必须按下面的写法。
// @APIVersion 1.0.0
// @Title beego Test API
// @Description beego has a very cool tools to autogenerate documents for your API
// @Contact [email protected]
// @TermsOfServiceUrl http://beego.me/
// @License Apache 2.0
// @LicenseUrl http://www.apache.org/licenses/LICENSE-2.0.html
package routers
import (
"beeapi/controllers"
"github.com/astaxie/beego"
)
func init() {
ns := beego.NewNamespace("/v1",
beego.NSNamespace("/object",
beego.NSInclude(
&controllers.ObjectController{
},
),
),
beego.NSNamespace("/user",
beego.NSInclude(
&controllers.UserController{
},
),
),
)
beego.AddNamespace(ns)
}
// 路由注册使用namespace+include的写法,对于其他路由注册写法,beego不会完成解析。而且只支持二级解析,一级为版本号,二级分别表示应用模块
上面主要定义了接口的全局信息,在定义时,注释信息必须紧挨着包名之上。接着需要定义请求以及响应参数