[go] go 언어의 html/template 패키지 소개
Go 언어는 html/template 패키지를 제공하여 HTML 템플릿을 사용하고 웹 애플리케이션을 개발할 수 있습니다. 이 패키지를 사용하면 안전하고 효율적인 방법으로 동적 HTML 페이지를 생성할 수 있습니다.
이 블로그에서는 Go 언어의 html/template 패키지를 간단히 소개하고, 간단한 예제를 통해 실제 사용법을 살펴보겠습니다.
목차
html/template 패키지 소개
html/template 패키지는 Go 언어에서 템플릿을 생성하고 실행하기 위한 기능을 제공합니다. 이 패키지를 사용하면 HTML을 안전하게 생성하고, 데이터를 템플릿에 삽입하여 동적으로 웹 페이지를 생성할 수 있습니다. 또한, Cross-Site Scripting (XSS) 공격으로부터 보호하기 위한 방어 기능도 제공합니다.
템플릿 작성하기
html/template 패키지를 사용하여 템플릿을 작성할 때에는 New
함수를 사용하여 새로운 템플릿을 생성하고, Parse
메서드를 사용하여 템플릿을 파싱합니다.
import "html/template"
// Create a new template
tmpl := template.New("mytemplate")
// Parse a template from a string
tmpl, err := tmpl.Parse("Hello, {{.Name}}!")
템플릿 실행하기
작성한 템플릿을 실행하기 위해서는 Execute
메서드를 사용하여 템플릿에 데이터를 삽입하고 실행합니다.
// Execute the template with data
err := tmpl.Execute(os.Stdout, map[string]string{"Name": "World"})
템플릿 예제
간단한 “Hello, World!” 예제를 통해 html/template 패키지의 사용법을 살펴보겠습니다.
package main
import (
"html/template"
"os"
)
func main() {
// Create a new template
tmpl := template.New("mytemplate")
// Parse a template from a string
tmpl, _ = tmpl.Parse("Hello, {{.Name}}!")
// Execute the template with data
tmpl.Execute(os.Stdout, map[string]string{"Name": "World"})
}
이렇게 html/template 패키지를 사용하여 간단한 동적 웹 페이지를 생성할 수 있습니다. Go 언어의 html/template 패키지는 안전한 웹 애플리케이션을 개발하는 데 필수적인 도구이며, 효율적인 방법으로 템플릿을 활용할 수 있도록 도와줍니다.