登录
首页 >  Golang >  Go问答

HTML 输出被解释为纯文本,而不是被接收为 html

来源:Golang技术栈

时间:2023-04-29 13:29:02 172浏览 收藏

大家好,今天本人给大家带来文章《HTML 输出被解释为纯文本,而不是被接收为 html》,文中内容主要涉及到golang,如果你对Golang方面的知识点感兴趣,那就请各位朋友继续看下去吧~希望能真正帮到你们,谢谢!

问题内容

我确定这只是我正在做的愚蠢的事情,但我是 Go 新手,所以不确定这里发生了什么。我有以下基本设置。

requestHandler := http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
    t := template.New("test")
    t, _ := template.ParseFiles("base.html")
    t.Execute(w, "")
})

server := &http.Server{
    Addr:           ":9999",
    Handler:        requestHandler,
    ReadTimeout:    10 * time.Second,
    WriteTimeout:   10 * time.Second,
    MaxHeaderBytes: 1 

base.html的内容如下:


        base.html
    

当我运行服务器并加载页面时,我会逐字看到模板中的 HTML,而不是解释版本。事实证明,模板被包装在 pre 标记中,随后被包装在新文档中。

发生什么了?为什么默认情况下将其视为纯文本而不是将其作为 html 发送,以便浏览器可以正确呈现它?当然,这一定是一个简单的误解,但在搜索中没有得到任何东西。想法?

正确答案

您需要添加带有 Content-Type 的标题

 w.Header().Set("Content-Type", "text/html")

以上就是本文的全部内容了,是否有顺利帮助你解决问题?若是能给你带来学习上的帮助,请大家多多支持golang学习网!更多关于Golang的相关知识,也可关注golang学习网公众号。

声明:本文转载于:Golang技术栈 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>