- 本文主要说明本人在使用beego的注解路由时不生效问题
背景:
- 一、按照官网进行注解路由配置,第一次设置路由,彻底正确,注解路由可用。
- 二、修改路由注释后,发现swagger页面并未有对应的更新
- 三、发现删除commentsRouter_controllers.go文件从新生成,清空浏览器缓存都没效果
分析缘由
- 虽然从新生成了commentsRouter_controllers.go文件,可是swagger文件夹下的swagger.json文件未更新
- 后通过bee run -downdoc=true -gendoc=true命令从新生成swagger.json文件,可是发现还得清空浏览器缓存才起做用
步骤以及注意事项
package main
import (
_ "yourApp/routers" // 缺乏此行时,我没法自动生成 commentsRouter_controllers.go 文件
"github.com/astaxie/beego"
)
func main() {
if beego.BConfig.RunMode == "dev" {
// 在beego.Run以前要配置swagger
beego.BConfig.WebConfig.DirectoryIndex = true
beego.BConfig.WebConfig.StaticDir["/swagger"] = "swagger"
}
beego.Run()
}
- 二、由于第一条中的配置仅在dev模式下生效,因而修改app.conf文件
runmode = dev
- 三、其它的地方,都跟官网同样便可,如今修改路由注释
- 四、以后执行bee run -downdoc=true -gendoc=true 而不是 bee run
- 五、清空浏览器缓存
- 六、刷新swagger页面,发现及时生效。