
php小编新一在这篇文章中将为您介绍如何在golang中添加特定多部分标头的解决方法。标头是HTTP请求和响应中的关键组成部分,用于传递各种元数据信息。然而,有时候我们可能会遇到一个问题,即在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
这是我的请求减去被拒绝的二进制数据:
主要特性: 1、支持多种语言 BEES支持多种语言,后台添加自动生成,可为每种语言分配网站风格。 2、功能强大灵活 BEES除内置的文章、产品等模型外,还可以自定义生成其它模型,满足不同的需求 3、自定义表单系统 BEES可自定义表单系统,后台按需要生成,将生成的标签加到模板中便可使用。 4、模板制作方便 采用MVC设计模式实现了程序与模板完全分离,分别适合美工和程序员使用。 5、用户体验好 前台
Content-Disposition: form-data; name="audio_file"; filename="test2.wav" Content-Type: application/octet-stream
解决方法
直接调用 createpart 而不是 createformfile 便捷方法。在用于创建部件的标头中设置内容类型。
立即学习“go语言免费学习笔记(深入)”;
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)









