+ Verwenden Sie HTML/Template Golang in Base64

WBOY
Freigeben: 2024-02-14 18:00:11
nach vorne
1056 Leute haben es durchsucht

+ 在 base64 中使用 html/template golang

In diesem Artikel stellt Ihnen der PHP-Editor Xinyi vor, wie Sie mithilfe von Golang Bilder in Base64 in die HTML-/Vorlagenvorlage einbetten. Bei der Webentwicklung stoßen wir häufig auf Situationen, in denen wir Bilder im Base64-Format in HTML-Vorlagen einbetten müssen. Dieser Ansatz kann HTTP-Anfragen reduzieren und die Ladegeschwindigkeit von Webseiten verbessern. In diesem Artikel wird ausführlich erläutert, wie Sie das HTML/Template-Paket von Golang verwenden, um diese Funktion zu implementieren und so das Laden Ihrer Webseite effizienter zu gestalten.

Frageninhalt

Gruß an andere Gophers.

Ich muss eine Datenmatrix in Base64-Form in einer HTML-Vorlage zurückgeben. In der Vorlage sieht es so aus. <img src="data:image/png;base64,{{.Datamatrix}}" alt="Datamatrix"/>

Ich füge meine Base64-Daten in eine .Datamatrix ein. Alles ist gut. Base64 ist gültig und alles (überprüft auf verschiedenen Decodern), aber wenn ich die Daten an die Vorlage übergebe +(plus) 符号时,符号更改为 &#43

Base64-Codierung wie folgt: base64.StdEncoding.EncodeToString(b)

Auch versucht base64.URLEncoding.EncodeToString(b), aber weitere Symbole sind durcheinander geraten.

Übergeben Sie Parameter als Strukturfelder vom Typ String

Habe es auf eine andere Art und Weise versucht: als Typ template.HTML,使用template.HTMLEscapeStringtemplate.URLEscapeStringtemplate.JSEscapeString, aber kein Ergebnis.

Für eine wirksame Lösung dieses Problems wären wir sehr dankbar.

Beispiel https://go.dev/play/p/c_s-wPl6dMT

Ähnliche Probleme auf Github: https://github.com/golang/go/issues/42506

P>S> Der Wechsel zu Text/Vorlage ist ebenfalls keine Option. Im eigentlichen Projekt habe ich auch ein paar Dinge in die Vorlagen eingefügt, aber sie funktionieren einfach nicht mit der Text-/Vorlagenbibliothek.

Workaround

Überraschenderweise lösten genügend Text/Vorlagen alle Probleme. und verursachte bei anderen Injektionen keine neuen Probleme.

https://www.php.cn/link/c1e247e2235eb596c080297d6903cf39

Das obige ist der detaillierte Inhalt von+ Verwenden Sie HTML/Template Golang in Base64. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:stackoverflow.com
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage