zoukankan      html  css  js  c++  java
  • beego批量上传文件

    最近项目中用到beego,需要实现文件批量上传,翻了好久beego的文档都没有找到满意的解决办法,结果看源码时发现作者已经给出了相关实现代码,在源码包controller.go文件中560-586行,记录如下:

    //GetFiles return multi-upload files
    files, err:=c.GetFiles("myfiles")
    	if err != nil {
    		http.Error(w, err.Error(), http.StatusNoContent)
    		return
    	}
    for i, _ := range files {
    	//for each fileheader, get a handle to the actual file
    	file, err := files[i].Open()
    	defer file.Close()
    	if err != nil {
    		http.Error(w, err.Error(), http.StatusInternalServerError)
    		return
    	}
    	//create destination file making sure the path is writeable.
    	dst, err := os.Create("upload/" + files[i].Filename)
    	defer dst.Close()
    	if err != nil {
    		http.Error(w, err.Error(), http.StatusInternalServerError)
    		return
    	}
    	//copy the uploaded file to the destination file
    	if _, err := io.Copy(dst, file); err != nil {
    		http.Error(w, err.Error(), http.StatusInternalServerError)
    		return
    	}
    }
    

    对应的input标签需设置multiple 属性

    <input type="file" multiple name="myfiles">
    
  • 相关阅读:
    java截取字符串
    Integer
    Sql语句常用关键字
    mybatis三种传值方式
    mybatis中的#和$的区别
    374. Guess Number Higher or Lower
    278. First Bad Version
    69. Sqrt(x)
    35. Search Insert Position
    167. Two Sum II
  • 原文地址:https://www.cnblogs.com/prince5460/p/12000046.html
Copyright © 2011-2022 走看看