gpt4 book ai didi

html - 如何使用 Go 发布文件数组?

转载 作者:数据小太阳 更新时间:2023-10-29 03:29:19 26 4
gpt4 key购买 nike

我有一个表单有很多选项可以发布,并使用 slice 发布文件,但是在 Go 中,Request.ParseForm() 只获取第一个文件,我应该如何使用文件 slice 解析?

在 html 中

<form enctype="multipart/form-data" method="POST" action="/homeworks" >
{{if .success}}
<p>flash success</p>
{{end}}

<div id="postform">
本次作业标题
<input type="text" name="title" />
<br>
<div class="postoption">
添加项目
<input type="text" name="option[]" />
音频文件
<input type="file" name="radio[]" />
答案
<input type="text" name="answer[]" />
</div>
</div>

<input type="submit" value="提交" />
</form>

如果我喜欢

    file,header,err:=r.FormFile("file")
fmt.Println(header)
if err!=nil{
panic(err)
}

它会 panic 没有这样的文件,我怎样才能得到文件 slice 。如果我把它改成 radio ,它可以工作,但是
无法获取文件 slice 。

最佳答案

这就是我最终处理它的方式,通过阅读 Go formfile() 的源代码

fhs := r.MultipartForm.File["radio"]

fhs 是 multipart 的 FileHeader 的 Headers。

通过使用Open方法,我可以获得接口(interface)file

for i:=0;i<len(fhs);i++{
f,err:=fhs[i].Open()
}

然后我可以进行下一步。

关于html - 如何使用 Go 发布文件数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22068138/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com