初始化
This commit is contained in:
49
server/controller/storage_controller.go
Normal file
49
server/controller/storage_controller.go
Normal file
@@ -0,0 +1,49 @@
|
||||
package controller
|
||||
|
||||
import (
|
||||
"seeyon-filesystem/config"
|
||||
"seeyon-filesystem/utils"
|
||||
|
||||
"github.com/gin-gonic/gin"
|
||||
)
|
||||
|
||||
// StorageController 存储配置控制器
|
||||
type StorageController struct{}
|
||||
|
||||
func NewStorageController() *StorageController {
|
||||
return &StorageController{}
|
||||
}
|
||||
|
||||
// GetCDNConfig 获取CDN配置
|
||||
// GET /api/admin/settings/cdn
|
||||
func (c *StorageController) GetCDNConfig(ctx *gin.Context) {
|
||||
cfg := config.AppConfig.Storage
|
||||
utils.Success(ctx, gin.H{
|
||||
"cdn_host": cfg.CDNHost,
|
||||
"cdn_path_prefix": cfg.CDNPathPrefix,
|
||||
"local_base_path": cfg.LocalBasePath,
|
||||
})
|
||||
}
|
||||
|
||||
// UpdateCDNConfig 更新CDN配置
|
||||
// PUT /api/admin/settings/cdn
|
||||
func (c *StorageController) UpdateCDNConfig(ctx *gin.Context) {
|
||||
var req struct {
|
||||
CDNHost string `json:"cdn_host"`
|
||||
CDNPathPrefix string `json:"cdn_path_prefix"`
|
||||
}
|
||||
if err := ctx.ShouldBindJSON(&req); err != nil {
|
||||
utils.BadRequest(ctx, "参数错误: "+err.Error())
|
||||
return
|
||||
}
|
||||
|
||||
// 更新内存配置
|
||||
config.AppConfig.Storage.CDNHost = req.CDNHost
|
||||
config.AppConfig.Storage.CDNPathPrefix = req.CDNPathPrefix
|
||||
|
||||
utils.SuccessWithMessage(ctx, "CDN配置已更新", gin.H{
|
||||
"cdn_host": req.CDNHost,
|
||||
"cdn_path_prefix": req.CDNPathPrefix,
|
||||
"example_url": req.CDNHost + req.CDNPathPrefix + "/2026/07/02/ab/abcdef.txt",
|
||||
})
|
||||
}
|
||||
Reference in New Issue
Block a user