package api import ( "git.sxidc.com/go-framework/baize/infrastructure/logger" "github.com/gin-gonic/gin" "io" "mime/multipart" ) type Context struct { *gin.Context } // GetFileHeaderBytes 获取传递的文件名和文件内容 func (c *Context) GetFileHeaderBytes(fileHeader *multipart.FileHeader) (string, []byte, error) { file, err := fileHeader.Open() if err != nil { return "", nil, err } defer func(file multipart.File) { err := file.Close() if err != nil { logger.GetInstance().Error(err) return } }(file) contentBytes, err := io.ReadAll(file) if err != nil { return "", nil, err } return fileHeader.Filename, contentBytes, nil }