Maison > Article > développement back-end > Pourquoi mon serveur HTTP Go renvoie-t-il des réponses vides avec le type de contenu « text/plain » ?
Résoudre les problèmes de réponse JSON dans Go : un guide complet
Dans cet article, nous aborderons un problème rencontré lors de la création de réponses JSON dans Allez explorer la solution.
Énoncé du problème :
Un développeur a rencontré des problèmes lors de la création d'un serveur HTTP simple et de la gestion des réponses JSON. Malgré l'utilisation d'un code similaire aux exemples trouvés en ligne, une réponse vide avec un type de contenu « text/plain » a été renvoyée.
Analyse :
Une comparaison minutieuse de le code du développeur et l'échantillon de travail ont révélé une différence subtile : les variables dans la structure du corps de la réponse n'étaient pas en majuscule dans le code du développeur. Cela entrave le processus de marshaling JSON, car Go nécessite que les noms de champs de structure soient exportés (en majuscules) afin d'être sérialisés en JSON.
Solution :
Pour résoudre ce problème problème, les variables de la structure ResponseCommands doivent être en majuscules, comme indiqué ci-dessous :
<code class="go">type ResponseCommands struct { Key string Value bool }</code>
Avec cette modification, Go reconnaîtra correctement les champs de structure et les sérialisera en JSON. La réponse résultante contiendra désormais les données JSON attendues et l'en-tête de type de contenu sera correctement défini sur "application/json".
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!