实现个图片上传,记录一下
我这里是采用的调试工具,apipost去直接上传的,参数值选择file即可

上传的图片,两种方式,一是用原来的文件名,直接file.Filename即可。
            
            
              Go
              
              
            
          
          func Upload(c *gin.Context) {
	file, _ := c.FormFile("file") // file为字段名
	//获取当前日期参数,当做文件名
	name := utils.NowTimeString()
	extstring := path.Ext(file.Filename)
	dst := "upload_files/" + name + extstring
	//直接用原来的文件名
	//dst := "upload_files/" + file.Filename
	c.SaveUploadedFile(file, dst)
	// 都是gin.context作为入参
	c.JSON(http.StatusOK, gin.H{
		"message":   "success",
		"file_name": name + extstring,
	})
}
        另外一种方法就是,自己生成名字,这里自己封装了一个方法
            
            
              Go
              
              
            
          
          package utils
import (
	"fmt"
	"time"
)
// 获取当前日期的参数当做文件名
func NowTimeString() string {
	now := time.Now()
	str := fmt.Sprintf("%d%d%d%d%d%d%d", now.Year(), now.Month(), now.Day(), now.Hour(), now.Minute(), now.Second(), now.Nanosecond())
	return str
}
        年月日时分秒最后加上纳秒拼接得来的
完成效果如下
