Skip to content

路由定义


路由的配置文件统一写在 router 目录下的 router.go 文件中

// BindController 注册路由,绑定控制器,绑定中间件
package router

func BindController(engine *tg.Engine) {
	// 跨域中间件
	engine.Use(middleware.Cors)
	// 日志中间件
	engine.Use(middleware.Logger)

	// 首页宣传页
	engine.GET("/", controller.HomeView)

	// 分组路由
	router := engine.Group("/api/v1")
	{
		router.GET("hello", controller.SayHello)
	}
}
// BindController 注册路由,绑定控制器,绑定中间件
package router

func BindController(engine *tg.Engine) {
	// 跨域中间件
	engine.Use(middleware.Cors)
	// 日志中间件
	engine.Use(middleware.Logger)

	// 首页宣传页
	engine.GET("/", controller.HomeView)

	// 分组路由
	router := engine.Group("/api/v1")
	{
		router.GET("hello", controller.SayHello)
	}
}

GET 路由

router.GET("<路由地址>",controller.<控制器方法名称>,<中间件>)
router.GET("<路由地址>",controller.<控制器方法名称>,<中间件>)

如果使用 View() 去渲染视图,那么请采用GET路由

POST 路由

router.POST("<路由地址>",controller.<控制器方法名称>,<中间件>)
router.POST("<路由地址>",controller.<控制器方法名称>,<中间件>)

PUT 路由

router.PUT("<路由地址>",controller.<控制器方法名称>,<中间件>)
router.PUT("<路由地址>",controller.<控制器方法名称>,<中间件>)

DELETE 路由

router.DELETE("<路由地址>",controller.<控制器方法名称>,<中间件>)
router.DELETE("<路由地址>",controller.<控制器方法名称>,<中间件>)

PATCH 路由

router.PATCH("<路由地址>",controller.<控制器方法名称>,<中间件>)
router.PATCH("<路由地址>",controller.<控制器方法名称>,<中间件>)

OPTIONS 路由

router.OPTIONS("<路由地址>",controller.<控制器方法名称>,<中间件>)
router.OPTIONS("<路由地址>",controller.<控制器方法名称>,<中间件>)

HEAD 路由

router.HEAD("<路由地址>",controller.<控制器方法名称>,<中间件>)
router.HEAD("<路由地址>",controller.<控制器方法名称>,<中间件>)

ALL 路由

router.ALL("<路由地址>",controller.<控制器方法名称>,<中间件>)
router.ALL("<路由地址>",controller.<控制器方法名称>,<中间件>)

分组路由

router := engine.Group('<分组前缀名>',<中间件>)
{
    router.GET("<路由地址>",controller.<控制器方法名称>)
}
router := engine.Group('<分组前缀名>',<中间件>)
{
    router.GET("<路由地址>",controller.<控制器方法名称>)
}

使用路由中间件

router := engine.Group("/api/v1", middleware.Authorization)
{
    router.GET("<路由地址>",controller.<控制器方法名称>,<中间件>)
}
router := engine.Group("/api/v1", middleware.Authorization)
{
    router.GET("<路由地址>",controller.<控制器方法名称>,<中间件>)
}

中间件可以传多个,多种形式互相搭配可以有不一样的效果

备案号:冀ICP备20015584号-5