Files
files/internal/routers/register.go

42 lines
1.5 KiB
Go
Raw Normal View History

package routers
import (
"fmt"
"git.apinb.com/bsm-sdk/core/middleware"
"git.apinb.com/ops/files/internal/auth"
2026-09-09 16:42:21 +08:00
"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))
2026-09-09 16:42:21 +08:00
engine.GET("/ready", health.Ready)
v1Group.GET("/ping/hello", ping.Hello)
2026-09-09 16:42:21 +08:00
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)
2026-09-09 16:42:21 +08:00
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)
2026-09-09 16:42:21 +08:00
group.GET("/files/:identity/content", files.Download)
group.DELETE("/files/:identity", files.Delete)
}