feat(backend): add image conversion handler and refactor image compression logic into a new file

This commit is contained in:
keven1024
2026-02-27 14:59:09 +08:00
parent 59cd23daf7
commit f1dec39851
3 changed files with 54 additions and 33 deletions

View File

@@ -13,6 +13,7 @@ import (
var handleTaskMap = map[string]func(c *echo.Context) ([]byte, error){
"image:compress": task.HandleImageCompress,
"image:convert": task.HandleImageConvert,
}
func CreateTask(c *echo.Context) error {

View File

@@ -0,0 +1,53 @@
package task
import (
"encoding/json"
"errors"
"github.com/labstack/echo/v5"
)
type BaseImageRequest struct {
FileId string `json:"file_id"`
}
func HandleImageCompress(c *echo.Context) ([]byte, error) {
r := new(BaseImageRequest)
if err := c.Bind(r); err != nil {
return nil, err
}
if r.FileId == "" {
return nil, errors.New("调用接口参数错误")
}
json, err := json.Marshal(map[string]any{
"file_id": r.FileId,
})
if err != nil {
return nil, err
}
return json, nil
}
type ImageConvertRequest struct {
BaseImageRequest
TargetExt string `json:"target_ext"`
}
func HandleImageConvert(c *echo.Context) ([]byte, error) {
r := new(ImageConvertRequest)
if err := c.Bind(r); err != nil {
return nil, err
}
if r.FileId == "" {
return nil, errors.New("调用接口参数错误")
}
json, err := json.Marshal(map[string]any{
"file_id": r.FileId,
})
if err != nil {
return nil, err
}
return json, nil
}

View File

@@ -1,33 +0,0 @@
package task
import (
"encoding/json"
"errors"
"github.com/labstack/echo/v5"
)
type GenCompressImageRequest struct {
FileId string `json:"file_id"`
}
func HandleImageCompress(c *echo.Context) ([]byte, error) {
r := new(GenCompressImageRequest)
if err := c.Bind(r); err != nil {
return nil, err
}
if r.FileId == "" {
return nil, errors.New("调用接口参数错误")
}
json, err := json.Marshal(map[string]any{
"file_id": r.FileId,
})
if err != nil {
return nil, err
}
return json, nil
}