package routers import ( "fmt" "git.apinb.com/bsm-sdk/core/middleware" "git.apinb.com/ops/files/internal/auth" "git.apinb.com/ops/files/internal/health" "git.apinb.com/ops/files/internal/logic/files" "git.apinb.com/ops/files/internal/logic/ping" "github.com/gin-gonic/gin" ) // Register 注册基础服务路由。 func Register(srvKey string, engine *gin.Engine) { v1Group := engine.Group(fmt.Sprintf("/%s/v1", srvKey)) engine.GET("/ready", health.Ready) v1Group.GET("/ping/hello", ping.Hello) v1Group.GET("/runtime/status", middleware.JwtAuth(true), health.Status) v1Group.PUT("/local/uploads/:identity", files.LocalUpload) v1Group.GET("/access/:identity/content", files.SignedAccess) v1Group.GET("/public/files/:identity/content", files.PublicAccess) userGroup := v1Group.Group("", middleware.JwtAuth(true)) registerFileRoutes(userGroup) userGroup.GET("/files/:identity/access", files.Access) internalGroup := v1Group.Group("/internal", auth.ServiceAuth()) internalGroup.GET("/runtime/status", health.Status) registerFileRoutes(internalGroup) internalGroup.POST("/files/access", files.BatchAccess) internalGroup.PUT("/files/:identity/visibility", files.SetVisibility) } func registerFileRoutes(group *gin.RouterGroup) { group.POST("/uploads/init", files.InitUpload) group.POST("/uploads/:identity/complete", files.CompleteUpload) group.GET("/files/:identity", files.Detail) group.GET("/files/:identity/content", files.Download) group.DELETE("/files/:identity", files.Delete) }