zhangqian
2024-06-12 c40d07e760598c0aae4353f7a1e2d6b01747e83f
文件下载&状态筛选
2个文件已修改
27 ■■■■ 已修改文件
controllers/audio.go 27 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
request/audio.go 补丁 | 查看 | 原始文档 | blame | 历史
controllers/audio.go
@@ -2,8 +2,10 @@
import (
    "errors"
    "fmt"
    "github.com/gin-gonic/gin"
    "gorm.io/gorm"
    "io"
    "os"
    "path"
    "speechAnalysis/constvar"
@@ -268,10 +270,27 @@
        return
    }
    c.Header("Content-Description", "File Transfer")
    c.Header("Content-Disposition", "attachment; filename="+audio.Name)
    c.Header("Content-Type", "application/octet-stream")
    c.File(audio.FilePath)
    file, err := os.Open(audio.FilePath)
    if err != nil {
        util.ResponseFormat(c, code.InternalError, "文件打开失败")
        return
    }
    defer file.Close()
    fileInfo, err := file.Stat()
    if err != nil {
        util.ResponseFormat(c, code.InternalError, "获取文件信息失败")
        return
    }
    c.Header("Content-Disposition", "inline; filename="+audio.Name) // 在浏览器中直接打开
    c.Header("Content-Length", fmt.Sprint(fileInfo.Size()))
    c.Header("Content-Type", "audio/mpeg") // 设置音频文件类型
    if _, err := io.Copy(c.Writer, file); err != nil {
        util.ResponseFormat(c, code.InternalError, "文件传输失败")
        return
    }
}
// BatchProcess
request/audio.go