golang包导入注意事项

时间:2024-10-30 10:03:06
今天在线上忽然有一个接口报错404
查看代码,没问题,nginx没问题.
又去翻提交记录, 发现之前是通过 包导入来进行路由初始化.并且本次提交不知道为什么导入被删除了.盲猜是因为ide导致的自动删除了.
	// 路由注册:
    _ "xxxx/api/xxx"
    // api路由
    func init(){
    // 注册的路由
    }

最终解决办法:

显示调用路由注册, 而不是通过init匿名导入方式.
// api路由
package foobar
func InitRoute(){
	// 注册的路由
}
// 路由注册:
func LoadRoute(){
	foobar.InitRoute()
	// ... 其他路由注册
}