go+beego+gorilla实现上传&保存图片

go语言开发时,遇到网站上传图片的问题,网上的资料很多不能用,最后自己测试通过一种方法。
1、router

package user
import ("Project/auth""github.com/gorilla/mux"
)
// UserAPI
func UserAPI(r *mux.Router) {privateRouter := r.PathPrefix("/user").Subrouter()privateRouter.HandleFunc("/create", createOne).Methods("POST")privateRouter.Use(auth.CheckAuth)
}

2、controller

package user
import ("encoding/json""net/http""os""Project/utils""strconv""strings""time""github.com/gorilla/mux""github.com/gorilla/schema""io""path"
)// 创建方法
func createOne(w http.ResponseWriter, r *http.Request) {// 获得图片对象uploadFile, handle, err := r.FormFile("img")if err != nil {utils.RespondWithError(w, 500, "img err")return}// 验证后缀名ext := strings.ToLower(path.Ext(handle.Filename))if ext != ".jpg" && ext != ".png" {utils.RespondWithError(w, 500, "img err-2")return}// 拼接图片urlcurrentTime := time.Now().Format("20060102150405")//上边字符串为golang诞生时间,时间转字符串要按照这个格式来整imgName := currentTime + extuploadPATH = "static/img/" + imgName// 保存图片并结束saveFile, err := os.OpenFile(uploadPATH , os.O_WRONLY|os.O_CREATE, 0666)if err != nil {utils.RespondWithError(w, 500, "img err")return}io.Copy(saveFile, uploadFile)defer uploadFile.Close()defer saveFile.Close()return
}

go+beego+gorilla实现上传保存图片相关推荐

  1. axios请求express上传保存图片

    express是个非常好的基于noe的web框架- 我们直接上实列代码吧 <!DOCTYPE html> <html lang="en"> <head ...

  2. beego ajax图片上传,Beego框架POST请求接收JSON数据

    Eclipse中使用Gradle构建Java Web项目 Gradle是一种自动化建构工具,使用DSL来声明项目设置.通过Gradle,可以对项目的依赖进行配置,并且自动下载所依赖的文件,使得构建项目 ...

  3. ASP.NET工作笔记之一:图片上传预览及无刷新上传

    转自:http://www.cnblogs.com/sibiyellow/archive/2012/04/27/jqueryformjs.html 最近项目里面涉及到无刷新上传图片的功能,其实也就是上 ...

  4. php图片上传为base64,php实现base64图片上传方式实例代码

    /** * base64图片上传 * @param $base64_img * @return array */ header("content-type:text/html;charset ...

  5. layiim php图片上传,孤狼采集器利用PHP上传图片方式说明

    有的服务器不喜欢开启FTP,也不想图片远程调用,但又必须使用图片本地化,那么怎么办呢?软件更新了第二个功能:PHP上传图片方法. 首先,点击:下载位置,选择图片临时下载在电脑里的位置. 然后,输入替换 ...

  6. SSM文件上传后访问不到图片

    一开始通过 解决办法:配置文件夹的映射关系 将你上传保存图片的文件夹选中给其配置一个访问地址 然后重启项目即可访问到图片

  7. Java图片上传 + 批量

    老规矩还是先上图看效果: 对于上传文件,浏览器在上传的过成中将文件已字节流的形式提交到服务器,小编一般选择采用apache的开源工具common-fileupload这个文件上传组件.这个common ...

  8. golang beego 文件上传

    前端代码 如果form表单中牵涉到文件上传,在form表单中就需要添加一个属性enctype="multipart/form-data"不然上传就是假上传,后台不能获取到上传的文件 ...

  9. html5摄像头拍照保存图片,[转载]HTML5在线摄像头拍照上传并保存到服务器的应用...

    1.//读取视频流 navigator.getUserMedia = navigator.getUserMedia || navigator.webkitGetUserMedia; if (navig ...

  10. php+jquery+Jcrop实现上传-截取-保存图片功能

    现在很我网站都流行会员模块上传头像时添加在线截取图片功能,截取完之后再保存,最近也有很多网友问有没有这个功能啊,网站上有一款只实现前端截取图片功能的,至于保存的话就没实现,具体可以查看实现图片截取+预 ...

最新文章

  1. mysql5.5.42指定数据库同步操作
  2. python 定时加载网页
  3. map反转key value
  4. VIM之Project 项目管理工具
  5. 媒体应用大数据,先解决三大难题
  6. 380免费云存储_三款功能强大的云盘软件,完全替代百度云与腾讯云
  7. iOS开发里面的4个层次
  8. 搭建自己的Unity Package
  9. Maven学习总结(10)——使用Maven编译项目gbk的不可映射问题
  10. python try 打印错误_python try语句如何打印错误行(含execfile)-- 转
  11. 异常org.hibernate.proxy.HibernateProxy.Forgot to register a type adapter
  12. fcpx教程从入门到精通「4」检查器窗口的认识
  13. 190509每日一句
  14. 手机号码归属地查询,手机号码归属地批量查询
  15. 高性能网络编程(一):单台服务器并发TCP连接数到底可以有多少?
  16. OSChina 周四乱弹 ——小小编辑教你装逼斗气
  17. VMbox下ubuntu调整分辨率/安装增强功能
  18. 华为路由器Serial接口及串口无法实现ACL访问控制解析
  19. android手机怎么删除安装包,手机里的自带软件如何卸载
  20. 使用andorid studio获取经纬度信息

热门文章

  1. windows mac谷歌浏览器跨域
  2. matlab的句柄 图形对象 gca gco gcf set get
  3. 一文搞懂mysql单引号,双引号,反引号的使用
  4. WDF驱动中访问 PCI 设备配置空间
  5. 银行业务模拟系统的设计与实现(C语言)
  6. 晶振对微型计算机的作用,单片机中晶振电路的作用及其常见参数
  7. 什么是mysql 的冗余备份_什么是数据库中的“数据冗余”?
  8. 通信知识宝典1 -- 如何让无线路由网速最快
  9. 乒乓球技术要领总结(保持更新)
  10. Tkinter GUI设计中文文档