Maison > développement back-end > Golang > Pourquoi mon serveur HTTP Go renvoie-t-il des réponses JSON vides ?

Pourquoi mon serveur HTTP Go renvoie-t-il des réponses JSON vides ?

Susan Sarandon
Libérer: 2024-10-27 16:57:31
original
319 Les gens l'ont consulté

Why Does My Go HTTP Server Return Empty JSON Responses?

Réponses JSON dans Go : résolution des problèmes liés aux réponses vides

Dans Go, la construction de réponses HTTP avec du contenu JSON peut poser des défis, en particulier lorsqu'il s'agit de résultats nuls. Cet article vise à résoudre un problème courant rencontré lors de la tentative de production de réponses JSON.

Énoncé du problème

Un débutant en Go tente d'implémenter un serveur HTTP simple avec une fonctionnalité de réponse JSON. Cependant, le serveur renvoie systématiquement une réponse vide avec un type de contenu "text/plain; charset=utf-8". Le développeur a comparé son code à un exemple en ligne mais ne parvient à identifier aucune différence.

Solution

Le nœud du problème réside dans la visibilité des champs de la structure. Dans Go, les champs de structure doivent être exportés (majuscules) pour être accessibles pour le marshaling JSON.

Exemple de code (original/incorrect) :

<code class="go">type ResponseCommands struct {
    key   string
    value bool
}</code>
Copier après la connexion

Exemple de code (corrigé) :

<code class="go">type ResponseCommands struct {
    Key   string
    Value bool
}</code>
Copier après la connexion

Lorsque les champs sont exportés, l'encodeur JSON peut accéder et encoder correctement leurs valeurs. Ce changement simple mais critique résout le problème et permet au serveur de renvoyer des réponses JSON valides.

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!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal