我有这个简单的 go lang 网络服务器,它只是将一些数据解析为外部 HTML 文件并将该文件提供给网络服务器。
package main
import (
"html/template"
"net/http"
)
type Event struct {
Name string
}
func handler(w http.ResponseWriter, r *http.Request) {
e := Event{ Name: "Melt! Festival" }
t, _ := template.ParseFiles("events.html")
t.Execute(w, e)
}
func main() {
http.HandleFunc("/", handler)
http.ListenAndServe(":1337", nil)
}
但是,每当我尝试使用 set 解析 HTML 文件时,它都会将我的 html 页面解析为文本,而不是在浏览器中呈现 HTML
<!DOCTYPE>
<html>
<head>
<title>Event</title>
</head>
<body>
<p>
Event: {{.Name}}
</p>
</body>
</html>
当我离开<!DOCTYPE>
HTML 文件时,它呈现得很好。
谁能告诉我为什么这是因为我真的很好奇?我花了两个小时寻找我的 go 代码不起作用的原因。