feat: rename qiniu to oss, add admin upload proxy with thumbnail, add dev-login

- Rename all QINIU_* config/code/docs to OSS_* to match actual Alibaba Cloud OSS
- Refactor upload module from internal/common/qiniu to internal/common/upload
- Add backend proxy upload endpoint (POST /api/admin/marketing/upload) to avoid CORS
- Auto-generate compressed thumbnail (800px, JPEG 80%) on admin image upload
- Add dev-login endpoint (POST /api/v1/auth/dev-login) for H5 debugging
- Add imageutil package for server-side image resizing

Made-with: Cursor
This commit is contained in:
nepiedg
2026-04-04 02:52:16 +08:00
parent aeaf6a04c2
commit 1eab1b99c1
21 changed files with 1023 additions and 191 deletions
+5 -8
View File
@@ -3,19 +3,16 @@ package routes
import (
"github.com/gin-gonic/gin"
qiniuhandler "wx_service/internal/common/qiniu/handler"
uploadhandler "wx_service/internal/common/upload/handler"
)
func registerCommonPublicRoutes(api *gin.RouterGroup, uploadHandler *qiniuhandler.UploadHandler) {
// 七牛上传回调:由七牛服务端调用,不能挂登录鉴权。
api.POST("/common/upload/qiniu/callback", uploadHandler.QiniuCallback)
func registerCommonPublicRoutes(api *gin.RouterGroup, uploadHandler *uploadhandler.UploadHandler) {
api.POST("/common/upload/oss/callback", uploadHandler.UploadCallback)
}
func registerCommonRoutes(protected *gin.RouterGroup, uploadHandler *qiniuhandler.UploadHandler) {
// 公共接口(所有小程序共用)
func registerCommonRoutes(protected *gin.RouterGroup, uploadHandler *uploadhandler.UploadHandler) {
common := protected.Group("/common")
{
// 七牛直传凭证:前端先拿 token,再直传文件到七牛 upload_url
common.POST("/upload/qiniu/token", uploadHandler.QiniuToken)
common.POST("/upload/oss/token", uploadHandler.GetUploadToken)
}
}