Как сделать один файл для обработки всех маршрутов для бессерверной функции vercel?
По умолчанию он использует встроенный обработчик. Есть ли способ использовать модуль gin, чтобы сделать то же самое?
package handler
import "github.com/gin-gonic/gin"
/* get the post data and send the same data as response */
func Hi(c *gin.Context) {
c.JSON(200, gin.H{
"message": "Hello World!",
})
}

Если я правильно понял ваш вопрос, вам просто нужно создать struct Handler и сделать метод "InitRoutes", возвращающий маршрутизатор со всеми handleFuncs
handleFuncs также должны быть методами Handler
Например:
type Handler struct {
// here you can inject services
}
func NewHandler(services *service.Service) *Handler {
return &Handler{}
}
func (h *Handler) InitRoutes() *gin.Engine {
router := gin.New()
auth := router.Group("/group")
{
auth.POST("/path", h.handleFunc)
auth.POST("/path", h.handleFunc)
}
return router
}
После этого вы должны ввести его в свой httpServer
srv := http.Server{
Addr: ":" + port,
Handler: Handler.InitRoutes(),
MaxHeaderBytes: 1 << 20,
ReadTimeout: 10 * time.Second,
WriteTimeout: 10 * time.Second,
}
srv.ListenAndServe()