Heim >Backend-Entwicklung >Golang >Wie kann ich Zeichen in JSON codieren, ohne dass ASCII in Go maskiert wird?
In diesem Fall besteht das Ziel darin, ein Zeichen in JSON ohne ASCII-Escapezeichen anzuzeigen. Bei Verwendung von Go1.7 bietet die Option Encoder.DisableHTMLEscaping eine Lösung.
Typischerweise werden Zeichen wie <, > und & in JSON mit Sequenzen wie u003C maskiert. Wenn diese Zeichen jedoch in ihrer ursprünglichen Form angezeigt werden sollen, muss die Escape-Funktion deaktiviert werden.
Go1.7 hat die SetEscapeHTML-Methode eingeführt, die einen booleschen Parameter akzeptiert. Wenn auf „false“ gesetzt, ist HTML-Escape für den Encoder deaktiviert.
Der folgende Code zeigt, wie die SetEscapeHTML-Methode verwendet wird, um HTML-Escape zu deaktivieren:
import "encoding/json" func main() { enc := json.NewEncoder(os.Stdout) enc.SetEscapeHTML(false) // Encode a map with an '&' character err := enc.Encode(map[string]string{ "key": "&", }) if err != nil { panic(err) } }
Durch Deaktivieren der HTML-Escape-Funktion bleibt das Zeichen „&“ in der JSON-Ausgabe erhalten und erzielt das gewünschte Ergebnis.
Das obige ist der detaillierte Inhalt vonWie kann ich Zeichen in JSON codieren, ohne dass ASCII in Go maskiert wird?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!