package oss import ( "github.com/gofiber/fiber/v2" ) // Handler OSS处理器 type Handler struct { ossService *Service } // NewHandler 创建OSS处理器 func NewHandler(ossService *Service) *Handler { return &Handler{ ossService: ossService, } } // GetPolicyToken 获取OSS上传凭证 func (h *Handler) GetPolicyToken(c *fiber.Ctx) error { // 获取目录参数 dir := c.Query("dir", "user-dir") // 生成凭证 policyToken, err := h.ossService.GetPolicyToken(dir) if err != nil { return c.Status(500).JSON(fiber.Map{ "error": "获取凭证失败: " + err.Error(), }) } return c.JSON(policyToken) } // GetMockPolicyToken 获取模拟OSS上传凭证(用于测试) func (h *Handler) GetMockPolicyToken(c *fiber.Ctx) error { // 获取目录参数 dir := c.Query("dir", "user-dir") // 生成模拟凭证 policyToken := h.ossService.GetMockPolicyToken(dir) return c.JSON(policyToken) }