Go
beego上传图片保存到本地
beego上传图片保存到本地
今天跟大家分享beego如何上传图片并将图片保存至本地,代码如下:
package controllers
import (
"log"
"path"
"time"
"fmt"
)
type AdminUploadController struct {
AdminBaseController
}
/**
后端上传处理类
*/
/**
配置图片上传
*/
func (c *AdminUploadController) AdminUploadSetting() {
//获取图片信息
f, h, err := c.GetFile("file")
if err != nil {
log.Fatal("获取文件错误 ", err)
c.ajaxMsg("文件获取失败", -1)
}
//清除临时文件
defer f.Close()
//获取文件后缀
var fileSuffix string
fileSuffix = path.Ext(h.Filename)
//获取当前时间戳
timeNow := time.Now().Unix()
//获取随机数
randCode := c.randCode()
//设置保存后的路径
imageUrl := "static/upload/setting/" + randCode + fmt.Sprintf("%d", timeNow) + fileSuffix
//保存文件
c.SaveToFile("file", imageUrl) // 保存位置在 static/upload, 没有文件夹要先创建
//返回
c.ajaxMsg(imageUrl, 1)
}这段代码通过获取前端上传控件file的上传内容,然后文件随机命名并保存到static/upload/setting目录下,并返回上传路径。
0条评论