qian奇岸微信二维码 如您需要快速报价 请加技术经理微信 服务热线
13501992972
"MENU"
首页 > 行业新闻 > 正文

如何把文档上传到页面go语言web服务器

奇岸开发
ahqian.com
11/29/2022
wechat

无需加好友免费技术支持

这样的操作一般出现在了文档上传的平台上,例如储存会员头像。在这儿,就以上传照片为例子,表述一个web如何把文档上传到页面go语言web服务器。

必须完成文档上传,大家应该做下列2个实际操作,

第一步,造就upload.html,用户使用此页面挑选并上传文件,源码如下所示

Go语言上传文件

Go语言上传文件

大家需注意,假如我们要让表格上传文件,那样form务必包括特性enctype="multipart/form-data"

第二步,界定web解决服务器端的一个过程upload,编码如下所示

func upload(w http.ResponseWriter, r *http.Request) { fmt.Println("method:", r.Method) //获得要求的办法 if r.Method == "GET" { crutime := time.Now().Unix() h := md5.New() io.WriteString(h, strconv.FormatInt(crutime, 10)) token := fmt.Sprintf("%x", h.Sum(nil)) t, _ := template.ParseFiles("") t.Execute(w, token) } else if r.Method == "POST" { token := r.Form.Get("token") //认证token的合理合法 if token != "" { tokenOK := false for v := range queue { if queue[v] == token { tokenOK = true break } } if !tokenOK { fmt.Fprintf(w, "页面出现异常") return } } else { //不会有token出错 fmt.Fprintf(w, "页面出现异常") return } r.ParseMultipartForm(32 << 20) // 操作符32 << 20表明32*(2的20三次方) file, handler, err := r.FormFile("uploadfile") if err != nil { fmt.Println(err) return } defer file.Close() fmt.Fprintf(w, "%v", handler.Header) // 请在文件列表下建立uploadFile文件目录 f, err := os.OpenFile("" handler.Filename, os.O_WRONLY|os.O_CREATE, 0666) if err != nil { fmt.Println(err) return } defer f.Close() io.Copy(f, file) } else { fmt.Fprintf(w, "it is not support.") }}在main路由器关联增至函数中http.HandleFunc("/upload", upload)这儿主要有两个必须表述,<< 20) // 操作符<<是左移运算符,32 << 20表明32*(2的20三次方) file, handler, err := r.FormFile("uploadfile") if err != nil { fmt.Println(err) return } defer file.Close() fmt.Fprintf(w, "%v", handler.Header) // 请在文件列表下建立uploadFile文件目录 f, err := os.OpenFile("" handler.Filename, os.O_WRONLY|os.O_CREATE, 0666) if err != nil { fmt.Println(err) return } defer f.Close() io.Copy(f, file) } else { fmt.Fprintf(w, "it is not support.") }}在main函数中加入路由器关联http.HandleFunc("/upload", upload)这里要表述的主要有两个,

1.服务器端解决上传文件应用ParseMultipartForm,主要参数表明网络服务器分配最大内存。当上传文件低于最大内存时,上传文件储存在管理运行内存中,超过,则储存在临时文件夹中。

2.另一上传文件返回值获得上传文件返回值FormFile下面能用Copy函数公式将文档写上网络服务器硬盘上。

上传完成后,服务器端回到上传请求头,如下图所示

全文详细地址:

热度482

了解更多如何把文档上传到页面go语言web服务器欢迎联系奇岸开发客服。

奇岸开发可定制企业官网小程序、小程序商城、餐饮外卖小程序、预约小程序、多门店小程序、分销小程序及个人小程序。

微信二维码

微信长按识别或扫一扫,无需加好友直接咨询,企业网站开发、网站托管维护、企业管理系统开发、微信小程序制作、域名主机、网站备案、网站改版等提供专业技术解答。

精彩推荐

猜你喜欢