У меня есть API, и в связи с некоторыми новыми требованиями мне нужно изменить несколько конечных точек API. Раньше код сервера писался с использованием структуры mux в Go
. Теперь я использую OAPI-codegen , чтобы сгенерировать некоторый шаблонный код сервера из определений API openAPI 3.0. Теперь проблема в том, что этот сгенерированный код использует Echo
вместо mux
.
Итак, вместо этого:
func RegisterHandlers(router codegen.EchoRouter, si ServerInterface) {
wrapper := ServerInterfaceWrapper{
Handler: si,
}
router.GET("/pets", wrapper.FindPets)
router.POST("/pets", wrapper.AddPet)
router.DELETE("/pets/:id", wrapper.DeletePet)
router.GET("/pets/:id", wrapper.FindPetById)
}
func SetupHandler() {
var myApi PetStoreImpl // This implements the pet store interface
e := echo.New()
petstore.RegisterHandlers(e, &myApi)
...
}
Я хочу что-то вроде этого в этом формате:
r := mux.NewRouter()
r.HandleFunc("/", HomeHandler)
r.HandleFunc("/products", ProductsHandler)
r.HandleFunc("/articles", ArticlesHandler)
http.Handle("/", r)
Можно ли использовать oapi-codegen для генерации стандартного кода, который использует mux
вместо Echo
? или любым другим способом?
Приветствуются любые указатели / помощь.