|
@@ -596,27 +596,53 @@ func (this *ResourceController) UploadImageBase64() {
|
|
|
fpath := uploadDir + "/" + fileName
|
|
|
|
|
|
image := this.Ctx.Request.FormValue("Image")
|
|
|
+
|
|
|
if image == "" {
|
|
|
- br.Msg = "参数错误"
|
|
|
- br.ErrMsg = "图片内容不能为空"
|
|
|
- return
|
|
|
- }
|
|
|
- b, _ := regexp.MatchString(`^data:\s*image\/(\w+);base64,`, image)
|
|
|
- if !b {
|
|
|
- br.Msg = "图片格式不正确"
|
|
|
- br.ErrMsg = "图片格式不正确"
|
|
|
- return
|
|
|
- }
|
|
|
- re, _ := regexp.Compile(`^data:\s*image\/(\w+);base64,`)
|
|
|
- base64Str := re.ReplaceAllString(image, "")
|
|
|
- base64Str = strings.Replace(base64Str, " ", "", -1)
|
|
|
+ // 从 file文件中获取
|
|
|
+ f, h, e := this.GetFile("Image")
|
|
|
+ if e != nil {
|
|
|
+ br.Msg = "参数错误"
|
|
|
+ br.ErrMsg = "获取资源信息失败,Err:" + e.Error()
|
|
|
+ return
|
|
|
+ }
|
|
|
+ ext = path.Ext(h.Filename)
|
|
|
+ dateDir := time.Now().Format("20060102")
|
|
|
+ uploadDir = utils.STATIC_DIR + "hongze/" + dateDir
|
|
|
+ err = os.MkdirAll(uploadDir, utils.DIR_MOD)
|
|
|
+ if err != nil {
|
|
|
+ br.Msg = "存储目录创建失败"
|
|
|
+ br.ErrMsg = "存储目录创建失败,Err:" + err.Error()
|
|
|
+ return
|
|
|
+ }
|
|
|
+ randStr = utils.GetRandStringNoSpecialChar(28)
|
|
|
+ fileName = randStr + ext
|
|
|
+ fpath = uploadDir + "/" + fileName
|
|
|
+ defer f.Close() //关闭上传文件
|
|
|
+ err = this.SaveToFile("Image", fpath)
|
|
|
+ if err != nil {
|
|
|
+ br.Msg = "文件上传失败"
|
|
|
+ br.ErrMsg = "文件上传失败,Err:" + err.Error()
|
|
|
+ return
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ b, _ := regexp.MatchString(`^data:\s*image\/(\w+);base64,`, image)
|
|
|
+ if !b {
|
|
|
+ br.Msg = "图片格式不正确"
|
|
|
+ br.ErrMsg = "图片格式不正确"
|
|
|
+ return
|
|
|
+ }
|
|
|
+ re, _ := regexp.Compile(`^data:\s*image\/(\w+);base64,`)
|
|
|
+ base64Str := re.ReplaceAllString(image, "")
|
|
|
+ base64Str = strings.Replace(base64Str, " ", "", -1)
|
|
|
|
|
|
- err = utils.SaveBase64ToFile(base64Str, fpath)
|
|
|
- if err != nil {
|
|
|
- br.Msg = "图片保存失败"
|
|
|
- br.ErrMsg = "图片保存失败,Err:" + err.Error()
|
|
|
- return
|
|
|
+ err = utils.SaveBase64ToFile(base64Str, fpath)
|
|
|
+ if err != nil {
|
|
|
+ br.Msg = "图片保存失败"
|
|
|
+ br.ErrMsg = "图片保存失败,Err:" + err.Error()
|
|
|
+ return
|
|
|
+ }
|
|
|
}
|
|
|
+
|
|
|
fmt.Println("end")
|
|
|
|
|
|
defer os.Remove(fpath)
|