Heim > Backend-Entwicklung > Golang > Wie werden Zeilenumbrüche in HTML-Vorlagen korrekt angezeigt?

Wie werden Zeilenumbrüche in HTML-Vorlagen korrekt angezeigt?

Susan Sarandon
Freigeben: 2024-10-31 12:38:01
Original
936 Leute haben es durchsucht

How to Display Newlines Correctly in HTML Templates?

Korrekte Anzeige von Zeilenumbrüchen in HTML-Vorlagen

Beim Laden von Textdateien mit Zeilenumbrüchen in HTML-Vorlagen stoßen Entwickler häufig auf ein Problem, bei dem diese Zeilenumbrüche maskiert werden zu „
“ anstatt als Zeilenumbrüche angezeigt zu werden. Dies kann für die Aufrechterhaltung der korrekten Formatierung und Lesbarkeit problematisch sein.

Um dieser Herausforderung zu begegnen, können Sie Ihren Text zunächst mit template.HTMLEscape() bereinigen, um alle potenziellen XSS-Schwachstellen zu beseitigen. Anschließend können Sie die Zeilenumbrüche („n“) durch „
“ ersetzen. mit strings.Replace(). Der geänderte Text sollte dann in template.HTML() gekapselt werden, um ihn als vertrauenswürdiges und sicheres HTML-Fragment zu kennzeichnen.

Eine Beispielimplementierung in Go demonstriert diesen Ansatz:

<code class="go">package main

import (
    "html/template"
    "os"
    "strings"
)

const page = `<!DOCTYPE html>
<html>
  <head>
  </head>
  <body>
    <p>{{.}}</p>
  </body>
</html>`

const text = `first line
<script>dangerous</script>
last line`

func main() {
    t := template.Must(template.New("page").Parse(page))
    safe := template.HTMLEscapeString(text)
    safe = strings.Replace(safe, "\n", "<br>", -1)
    t.Execute(os.Stdout, template.HTML(safe)) // template.HTML encapsulates a known safe HTML document fragment.
}</code>
Nach dem Login kopieren

Dieser Ansatz stellt sicher, dass die Zeilenumbrüche korrekt als Zeilenumbrüche im Browser angezeigt werden und gleichzeitig die Integrität des gerenderten HTML-Inhalts gewahrt bleibt.

Das obige ist der detaillierte Inhalt vonWie werden Zeilenumbrüche in HTML-Vorlagen korrekt angezeigt?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage