我刚开始学习 Go,想创建自己的 REST API。
问题很简单:我想将我的 api 的路由放在不同的文件中,例如:routes/users.go,然后我将其包含在“main”函数中并注册这些路由。
Echo/Go 中有大量的 restAPI 示例,但它们都在 main() 函数中具有路由。
我检查了一些示例/github 入门工具包,但似乎找不到我喜欢的解决方案。
func main() {
e := echo.New()
e.GET("/", func(c echo.Context) error {
responseJSON := &JSResp{Msg: "Hello World!"}
return c.JSON(http.StatusOK, responseJSON)
})
//I want to get rid of this
e.GET("users", UserController.CreateUser)
e.POST("users", UserController.UpdateUser)
e.DELETE("users", UserController.DeleteUser)
//would like something like
// UserRoutes.initRoutes(e)
e.Logger.Fatal(e.Start(":1323"))
}
//UserController.go
//CreateUser
func CreateUser(c echo.Context) error {
responseJSON := &JSResp{Msg: "Create User!"}
return c.JSON(http.StatusOK, responseJSON)
}
//UserRoutes.go
func initRoutes(e) { //this is probably e* echo or something like that
//UserController is a package in this case that exports the CreateUser function
e.GET("users", UserController.CreateUser)
return e;
}
有没有一种简单的方法可以做到这一点?来自 node.js 并且仍然有一些语法错误当然会解决它们,但我目前正在努力解决我的代码架构。