Maison >développement back-end >Golang >Comment définir le type de contenu approprié pour les requêtes POST en plusieurs parties dans Go ?
Requêtes HTTP multipart dans Go
La création de requêtes multipart, couramment utilisées pour envoyer des données dans des formats spécifiques, peut être réalisée à l'aide du package multipart dans Aller. Voyons comment résoudre ce problème.
Considérons le scénario suivant : envoyer une requête POST en plusieurs parties composée à la fois de données JSON et d'une limite. Cette limite sépare différentes parties de la requête.
De nombreuses tentatives ont été faites, comme illustré dans l'extrait de code donné. Cependant, le serveur renvoie systématiquement une erreur HTTP 200, indiquant que le type de message n'est pas pris en charge.
Pour résoudre ce problème, nous devons définir correctement le type de contenu de chaque partie. Voici le code modifié :
<code class="go">body := &bytes.Buffer{} writer := multipart.NewWriter(body) part, _ := writer.CreatePart(textproto.MIMEHeader{ "Content-Type": {"application/json"}, }) part.Write(jsonStr) writer.Close() req, _ := http.NewRequest("POST", "http://1.1.1.1/blabla", body) req.Header.Set( "Content-Type", "multipart/mixed; boundary="+writer.Boundary(), )</code>
En définissant le Content-Type: application/json pour la partie contenant les données JSON, nous nous assurons que le serveur puisse interpréter correctement la requête. Le paramètre de limite est également défini de manière appropriée pour correspondre au format attendu.
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!