From 81a3f45817c0eca1211fa5cece997d9664a97d88 Mon Sep 17 00:00:00 2001 From: wucongxing8150 <815046773@qq.com> Date: Tue, 15 Oct 2024 10:38:28 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E5=A2=9E=E8=8E=B7=E5=8F=96oss?= =?UTF-8?q?=E7=AD=BE=E5=90=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- api/controller/Public.go | 29 +++++++++++++++++++++++++++++ api/requests/Public.go | 6 ++++++ api/router/router.go | 7 +++++++ 3 files changed, 42 insertions(+) diff --git a/api/controller/Public.go b/api/controller/Public.go index 1c9a206..1d30f8d 100644 --- a/api/controller/Public.go +++ b/api/controller/Public.go @@ -10,6 +10,7 @@ import ( "hepa-calc-admin-api/api/requests" "hepa-calc-admin-api/api/responses" "hepa-calc-admin-api/config" + "hepa-calc-admin-api/extend/aliyun" "hepa-calc-admin-api/global" "hepa-calc-admin-api/utils" "sort" @@ -337,3 +338,31 @@ func (b *Public) GetIndexData(c *gin.Context) { responses.OkWithData(g, c) } + +// GetOssSign 获取oss签名 +func (b *Public) GetOssSign(c *gin.Context) { + publicRequest := requests.PublicRequest{} + req := publicRequest.GetOssSign + if err := c.ShouldBind(&req); err != nil { + responses.FailWithMessage(err.Error(), c) + return + } + + // 参数验证 + if err := global.Validate.Struct(req); err != nil { + responses.FailWithMessage(utils.Translate(err), c) + return + } + + // 获取oss签名 + dir := "base/class/" + + // 生成签名 + ossSign, err := aliyun.GetOssSign(dir) + if err != nil { + responses.FailWithMessage("获取签名失败", c) + return + } + + responses.OkWithData(ossSign, c) +} diff --git a/api/requests/Public.go b/api/requests/Public.go index d46c564..5e25ede 100644 --- a/api/requests/Public.go +++ b/api/requests/Public.go @@ -3,6 +3,7 @@ package requests type PublicRequest struct { Login // 登陆 GetIndexData // 首页动态统计数据 + GetOssSign // 获取oss签名 } // Login 登陆 @@ -19,3 +20,8 @@ type GetIndexData struct { StartTime string `json:"start_time" form:"start_time" validate:"required" label:"开始时间"` EndTime string `json:"end_time" form:"end_time" validate:"required" label:"结束时间"` } + +// GetOssSign 获取oss签名 +type GetOssSign struct { + Scene int `json:"scene" form:"scene" validate:"required,oneof=1 2" label:"场景"` // (1:分类图标) +} diff --git a/api/router/router.go b/api/router/router.go index cb89595..d22a6e6 100644 --- a/api/router/router.go +++ b/api/router/router.go @@ -105,6 +105,13 @@ func adminRouter(r *gin.Engine, api controller.Api) { // 首页动态统计数据 indexGroup.GET("/data", api.Public.GetIndexData) } + + // 签名 + signGroup := adminGroup.Group("/sign") + { + // 获取oss签名 + signGroup.GET("/oss", api.Public.GetOssSign) + } } // basicRouter 基础数据-验证权限