ホームページ > バックエンド開発 > Golang > Go HTTP サーバーがコンテンツ タイプ「text/plain」の空の応答を返すのはなぜですか?

Go HTTP サーバーがコンテンツ タイプ「text/plain」の空の応答を返すのはなぜですか?

Mary-Kate Olsen
リリース: 2024-10-31 16:45:30
オリジナル
625 人が閲覧しました

Why Does My Go HTTP Server Return Empty Responses with

Go での JSON 応答の問題の解決: 総合ガイド

この記事では、Go で JSON 応答を作成するときに発生する問題について詳しく説明します。解決策を調べてください。

問題ステートメント:

開発者は、単純な HTTP サーバーを構築し、JSON 応答を処理しているときに問題に遭遇しました。オンラインで見つかったサンプルと同様のコードを使用したにもかかわらず、コンテンツ タイプが「text/plain」の空の応答が返されました。

分析:

開発者のコ​​ードと実際のサンプルでは、​​微妙な違いが明らかになりました。開発者のコ​​ードでは、応答本文の構造体の変数が大文字になっていませんでした。 Go では JSON にシリアル化するために構造体フィールド名をエクスポートする (大文字にする) 必要があるため、これにより JSON マーシャリング プロセスが妨げられます。

解決策:

これを解決するにはこの問題では、以下に示すように、ResponseCommands 構造体の変数は大文字にする必要があります:

<code class="go">type ResponseCommands struct {
    Key   string
    Value bool
}</code>
ログイン後にコピー

この変更により、Go は構造体のフィールドを適切に認識し、JSON にシリアル化します。結果の応答には予期された JSON データが含まれ、コンテンツ タイプ ヘッダーは「application/json」に正しく設定されます。

以上がGo HTTP サーバーがコンテンツ タイプ「text/plain」の空の応答を返すのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート