go-common/app/admin/main/feed/http/bfs.go

56 lines
1.3 KiB
Go
Raw Normal View History

2019-04-22 10:49:16 +00:00
package http
import (
"io/ioutil"
"net/http"
"go-common/library/ecode"
"go-common/library/log"
bm "go-common/library/net/http/blademaster"
"go-common/library/net/http/blademaster/render"
)
func clientUpload(c *bm.Context) {
var (
req = c.Request
md5 string
url string
)
req.ParseMultipartForm(int64(bfsSvc.BfsMaxSize))
file, _, err := req.FormFile("file")
if err != nil {
log.Error("c.Request().FormFile(\"file\") error(%v) | ", err)
c.JSON(nil, ecode.RequestErr)
return
}
bs, err := ioutil.ReadAll(file)
file.Close()
if err != nil {
log.Error("ioutil.ReadAll(c.Request().Body) error(%v)", err)
c.JSON(nil, ecode.RequestErr)
return
}
if md5, err = bfsSvc.FileMd5(bs); err != nil {
log.Error("bfsSvc.FileMd5 error(%v)", err)
c.JSON(nil, ecode.RequestErr)
return
}
ftype := http.DetectContentType(bs)
//if model.IsCoverType(ftype) {
// log.Error("filetype not allow file type(%s)", ftype)
// renderErrMsg(c, ecode.RequestErr.Code(), "文件上传错误:图片类型错误")
// return
//}
if url, err = bfsSvc.ClientUpCover(c, ftype, bs); err != nil {
log.Error("bfsSvc.ClientUpCover error(%v)", err)
c.JSON("文件上传错误:"+err.Error(), ecode.RequestErr)
return
}
data := map[string]interface{}{
"url": url,
"md5": md5,
"size": len(bs),
}
c.Render(http.StatusOK, render.MapJSON(data))
}