json package - encoding/json - Go Packages

2025-07-18

https://pkg.go.dev/encoding/json#Encoder.SetEscapeHTML

特に問題ではないが & が含まれる文字列が \u0026 に変換され「どうしてこうなるの?」と思って調べたのでメモ。

SetEscapeHTML specifies whether problematic HTML characters should be escaped inside JSON quoted strings. The default behavior is to escape &, <, and > to \u0026, \u003c, and \u003e to avoid certain safety problems that can arise when embedding JSON in HTML.

SetEscapeHTMLは、JSONの引用符で囲まれた文字列内で、問題となるHTML文字をエスケープするかどうかを指定します。デフォルトの動作では、JSONをHTMLに埋め込む際に発生しうる特定のセキュリティ上の問題を回避するため、&<>\u0026\u003c\u003eにエスケープされます。