前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >gin框架之文件上传

gin框架之文件上传

作者头像
大话swift
发布于 2020-03-16 10:32:24
发布于 2020-03-16 10:32:24
4.1K00
代码可运行
举报
文章被收录于专栏:大话swift大话swift
运行总次数:0
代码可运行

这篇文章我们主要讲gin框架的文件上传功能

1、单文件上传

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
package main

import (
  "fmt"
  "github.com/gin-gonic/gin"
  "net/http"
)

func main() {
  router := gin.Default()
  router.POST("/upload", func(c *gin.Context) {
    file, _ := c.FormFile("file")

    // 上传文件至指定目录
    if err := c.SaveUploadedFile(file, "./upload/"+file.Filename); err != nil {
      fmt.Println(err)
    }
    c.String(http.StatusOK, fmt.Sprintf("'%s' uploaded!", file.Filename))
  })
  router.Run(":8080")
}

postman示例

curl示例

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
curl --location --request POST 'http://127.0.0.1:8080/upload' \
--header 'Content-Type: multipart/form-data; boundary=--------------------------091075461974876853112895' \
--form 'file=@/C:/Users/Administrator/Pictures/go.jpg'

2、多文件上传

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
package main

import (
  "fmt"
  "github.com/gin-gonic/gin"
  "net/http"
)

func main() {
  router := gin.Default()
  router.POST("/upload", func(c *gin.Context) {
    file, _ := c.FormFile("file")

    // 上传文件至指定目录
    if err := c.SaveUploadedFile(file, "./upload/"+file.Filename); err != nil {
      fmt.Println(err)
    }
    c.String(http.StatusOK, fmt.Sprintf("'%s' uploaded!", file.Filename))
  })
  router.POST("/upload/multi", func(c *gin.Context) {
    // Multipart form
    form, _ := c.MultipartForm()
    files := form.File["file[]"]

    for _, file := range files {
      if err := c.SaveUploadedFile(file, "./upload/"+file.Filename); err != nil {
        fmt.Println(err)
      }
    }
    c.String(http.StatusOK, fmt.Sprintf("%d files uploaded!", len(files)))
  })
  router.Run(":8080")
}

postman示例

curl示例

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
curl --location --request POST 'http://127.0.0.1:8080/upload/multi' \
--header 'Content-Type: multipart/form-data; boundary=--------------------------296843343751307885084965' \
--form 'file[]=@/C:/Users/Administrator/Pictures/go.jpg' \
--form 'file[]=@/C:/Users/Administrator/Pictures/a.jpg'

如果觉得对你有用,记着关注我!你的关注,是我最更新的最大动力!

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-03-08,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 大话swift 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档