Maison  >  Article  >  développement back-end  >  Je ne peux pas ajouter d'en-tête à un multipart spécifique dans Golang

Je ne peux pas ajouter d'en-tête à un multipart spécifique dans Golang

PHPz
PHPzavant
2024-02-10 18:18:18669parcourir

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

L'éditeur PHP Xinyi vous présentera la solution sur la façon d'ajouter des en-têtes spécifiques en plusieurs parties dans Golang dans cet article. Les en-têtes sont des composants clés des requêtes et des réponses HTTP, utilisés pour transmettre diverses informations de métadonnées. Cependant, nous pouvons parfois rencontrer un problème selon lequel des en-têtes en plusieurs parties spécifiques ne peuvent pas être ajoutés à la requête dans Golang. Dans ce qui suit, nous vous proposerons une solution simple et efficace pour vous aider à surmonter ce problème. commençons!

Contenu de la question

L'API que j'utilise nécessite que le type de contenu du formulaire en plusieurs parties soit de type contenu : audio/wav mais si vous ajoutez un fichier part, _ := writer.createformfile("audio_file", "test2.wav") Il crée le type de contenu application/octet-stream

J'ai essayé : part.header.set("content-type", "音频/wav") Mais l'en-tête n'est pas défini.

Voici les données de la requête curl moins le binaire valide :

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

Voici ma demande moins les données binaires rejetées :

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

Solution

Appelez createpart directement au lieu de la méthode pratique createformfile. Définissez le type de contenu dans l'en-tête utilisé pour créer le widget.

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)

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer