func loadBeegoSingle(method, path string, handler beego.FilterFunc) http.Handler { app := beego.NewApp() switch method { case "GET": app.Get(path, handler) case "POST": app.Post(path, handler) case "PUT": app.Put(path, handler) case "PATCH": app.Patch(path, handler) case "DELETE": app.Delete(path, handler) default: panic("Unknow HTTP method: " + method) } return app.Handlers }
func loadBeego(routes []route) http.Handler { re := regexp.MustCompile(":([^/]*)") app := beego.NewApp() for _, route := range routes { route.path = re.ReplaceAllString(route.path, ":$1!") switch route.method { case "GET": app.Get(route.path, beegoHandler) case "POST": app.Post(route.path, beegoHandler) case "PUT": app.Put(route.path, beegoHandler) case "PATCH": app.Patch(route.path, beegoHandler) case "DELETE": app.Delete(route.path, beegoHandler) default: panic("Unknow HTTP method: " + route.method) } } return app.Handlers }