登录
首页 >  Golang >  Go问答

我遇到了在 Golang 中添加特定的多部分标头的问题

来源:stackoverflow

时间:2024-02-22 14:36:24 480浏览 收藏

“纵有疾风来,人生不言弃”,这句话送给正在学习Golang的朋友们,也希望在阅读本文《我遇到了在 Golang 中添加特定的多部分标头的问题》后,能够真的帮助到大家。我也会在后续的文章中,陆续更新Golang相关的技术文章,有好的建议欢迎大家在评论留言,非常感谢!

问题内容

我使用的 api 要求多部分表单的内容类型为 content-type: audio/wav 但如果您添加一个文件 part, _ := writer.createformfile("audio_file", "test2.wav") 它使内容类型为 application/octet-stream

我尝试过: part.header.set("content-type", "音频/wav") 但标头未定义。

这是curl请求数据减去有效的二进制文件:

content-disposition: form-data; name="audio_file"; filename="test2.wav"
content-type: audio/wav

这是我的请求减去被拒绝的二进制数据:

Content-Disposition: form-data; name="audio_file"; filename="test2.wav"
Content-Type: application/octet-stream

正确答案


直接调用 createpart 而不是 createformfile 便捷方法。在用于创建部件的标头中设置内容类型。

h := make(textproto.MIMEHeader)
h.Set("Content-Disposition",
    fmt.Sprintf(`form-data; name="%s"; filename="%s"`, "audio_file", "test2.wav"))
h.Set("Content-Type", "audio/wav")
part, err := writer.CreatePart(h)

今天关于《我遇到了在 Golang 中添加特定的多部分标头的问题》的内容就介绍到这里了,是不是学起来一目了然!想要了解更多关于的内容请关注golang学习网公众号!

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>