新增了上传oss图片

This commit is contained in:
wucongxing8150 2024-10-10 17:30:14 +08:00
parent a8e0d18794
commit e668b9232d
3 changed files with 50 additions and 1 deletions

View File

@ -2,7 +2,10 @@ package controller
import (
"github.com/gin-gonic/gin"
"knowledge/api/requests"
"knowledge/api/responses"
"knowledge/extend/aliyun"
"knowledge/global"
"knowledge/utils"
)
@ -20,3 +23,31 @@ func (b *Public) GetCaptcha(c *gin.Context) {
"b64s": b64s,
}, 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 := "question/"
// 生成签名
ossSign, err := aliyun.GetOssSign(dir)
if err != nil {
responses.FailWithMessage("获取签名失败", c)
return
}
responses.OkWithData(ossSign, c)
}

10
api/requests/Public.go Normal file
View File

@ -0,0 +1,10 @@
package requests
type PublicRequest struct {
GetOssSign // 获取oss签名
}
// GetOssSign 获取oss签名
type GetOssSign struct {
Scene int `json:"scene" form:"scene" validate:"required,oneof=1 2" label:"场景"` // 1:场内题目 2:场外题目)
}

View File

@ -111,7 +111,15 @@ func publicRouter(r *gin.Engine, api controller.Api) {
// adminRouter 公共路由-验证权限
func adminRouter(r *gin.Engine, api controller.Api) {
adminGroup := r.Group("/admin")
{
// 签名
signGroup := adminGroup.Group("/sign")
{
// 获取oss签名
signGroup.GET("/oss", api.Public.GetOssSign)
}
}
}
// basicRouter 基础数据-验证权限