JSON で ASCII コードの代わりに文字を表示する
提供された Go コードでは、キーと値のペア「key」を持つ JSON オブジェクト":"&"が生成されます。ただし、ブラウザとコンソールの両方に表示される結果には、アンパサンド記号 (&) の代わりにエスケープされた文字シーケンス「u0026」が表示されました。
この問題を解決するために、Go1.7 ではエンコーディング/に SetEscapeHTML 関数が導入されました。 jsonパッケージ。この関数を使用すると、JSON 文字列内の HTML 特殊文字 (<、>、&) のエスケープを無効にすることができます。
JSON エンコーダで SetEscapeHTML を false に設定すると、アンパサンド文字のエスケープを無効にすることができます。無効。変更されたコードは次のとおりです。
enc := json.NewEncoder(w) enc.SetEscapeHTML(false)
この変更により、アンパサンド文字は、同等の ASCII コードではなく、ブラウザーとコンソールの両方で「&」として表示されます。
注: このアプローチは、JSON 文字列への文字のエンコードにのみ影響します。クライアントから受信した文字のエンコーディングは変更されません。
以上がJSON に「&」ではなく「\\u0026」が表示されるのはなぜですか?どうすれば修正できますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。