Heim  >  Artikel  >  Backend-Entwicklung  >  Ich kann in Golang keinen Header zu einem bestimmten Multipart hinzufügen

Ich kann in Golang keinen Header zu einem bestimmten Multipart hinzufügen

PHPz
PHPznach vorne
2024-02-10 18:18:18668Durchsuche

我无法将标头添加到 golang 中的特定多部分

Der PHP-Editor Xinyi stellt Ihnen in diesem Artikel die Lösung zum Hinzufügen spezifischer mehrteiliger Header in Golang vor. Header sind Schlüsselkomponenten in HTTP-Anfragen und -Antworten und werden zur Übermittlung verschiedener Metadateninformationen verwendet. Allerdings kann es manchmal vorkommen, dass bestimmte mehrteilige Header der Anfrage in Golang nicht hinzugefügt werden können. Im Folgenden stellen wir Ihnen eine einfache und effektive Lösung vor, die Ihnen bei der Bewältigung dieses Problems hilft. Lasst uns beginnen!

Frageninhalt

Die von mir verwendete API erfordert, dass der Inhaltstyp des mehrteiligen Formulars Inhaltstyp: Audio/WAV ist, aber wenn Sie eine Datei hinzufügen part, _ := writer.createformfile("audio_file", "test2.wav") Es erstellt den Inhaltstyp application/octet-stream

Ich habe versucht: part.header.set("content-type", "音频/wav") Der Header ist jedoch nicht definiert.

Dies sind die Curl-Anforderungsdaten abzüglich der gültigen Binärdatei:

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

Dies ist meine Anfrage abzüglich der abgelehnten Binärdaten:

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

Solution

Rufen Sie createpart direkt anstelle der praktischen Methode „createformfile“ auf. Legen Sie den Inhaltstyp im Header fest, der zum Erstellen des Widgets verwendet wird.

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)

Das obige ist der detaillierte Inhalt vonIch kann in Golang keinen Header zu einem bestimmten Multipart hinzufügen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:stackoverflow.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen