ホームページ >バックエンド開発 >Golang >Go HTTP サーバーが JSON データを返さないのはなぜですか?

Go HTTP サーバーが JSON データを返さないのはなぜですか?

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-10-31 09:23:01739ブラウズ

Why Isn't My Go HTTP Server Returning JSON Data?

JSON を使用した HTTP 応答の作成

この質問では、作成者は Go HTTP サーバーから JSON 応答を生成する際に困難に遭遇しました。動作するサンプルと比較すると、コードの明らかな類似点に困惑しました。

問題の核心は、Go 構造体のパブリック変数とエクスポートされていない変数の違いにあります。動作サンプルでは、​​次のようなパブリック (エクスポートされた) フィールド名が使用されました。

type Profile struct {
  Name    string
  Hobbies []string
}

対照的に、作成者の構造体は、エクスポートされていない (小文字) フィールド名を特徴としていました:

type ResponseCommands struct {
    key   string
    value bool
}

エクスポートされていないフィールドをマーシャリングするときJSON に変換すると、エンコーダーはそれらを無視します。その結果、作成者のカスタム JSON 応答にはデータが含まれませんでした。これを解決するには、適切な JSON 表現を確保するために、構造体のフィールド名がエクスポート (大文字) されていることを確認する必要があります。

以上がGo HTTP サーバーが JSON データを返さないのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。