gin 文件上传

文件上传 写入本地

r.POST("/upload", func(c *gin.Context) {
    file, _ := c.FormFile("file")
    // 打开文件
    in, _ := file.Open()
    defer in.Close() //defer 等待函数执行完毕释放资源
    //创建文件
    out, _ := os.Create("./" + file.Filename)
    defer out.Close()
    // 将文件内容写入
    io.Copy(out, in)

    // 将上传的文件返回
    c.Writer.Header().Add("Content-Disposition", fmt.Sprintf("attachment; filename=%s", file.Filename))
    c.File("./" + file.Filename)
})

多文件上传

r.POST("/uploads", func(c *gin.Context) {
    from, _ := c.MultipartForm()
    files := from.File["files"]

    for _, file := range files {
        // 上传文件至指定目录
        filename := file.Filename
        c.SaveUploadedFile(file, filename)
    }

    c.JSON(200, gin.H{
        "message": "upload success",
    })
})
版权声明:
作者:89391311
链接:https://www.csev.cn/code-2/golang/20241203533.html
来源:彩色动力-测试分享
版权声明:本文欢迎任何形式转载,转载时完整保留本声明信息(包含原文链接、原文出处、原文作者、版权声明)即可。本文后续所有修改都会第一时间在原始地址更新。
THE END
根据我国《计算机软件保护条例》第十七条规定:“为了学习和研究软件内含的设计思想和原理,通过安装、显示、传输或者存储软件等方式使用软件的,可以不经软件著作权人许可,不向其支付报酬。本站资源仅供个人学习交流,请于下载后 24 小时内删除,不允许用于商业用途,否则法律问题自行承担。
分享
二维码
打赏
< <上一篇
下一篇>>
文章目录
关闭
目 录
微信扫一扫关注蓝威网官方公众号

微信扫一扫关注蓝威网官方公众号