使用golang时浏览器错误地解释了xml标签(我认为)
Posted
技术标签:
【中文标题】使用golang时浏览器错误地解释了xml标签(我认为)【英文标题】:xml tag wrongly interpreted by browser(i think) while using golang 【发布时间】:2021-11-16 06:11:57 【问题描述】:我正在尝试通过 golang 呈现 xml 站点地图并遇到问题。 浏览器将标签本身的“以下是我的 xml 代码:
<?xml-stylesheet type="text/xsl" href="mylink"?>
<sitemapindex xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<sitemap>
<loc><![CDATA[...]]></loc>
<lastmod><![CDATA[ ]]></lastmod>
</sitemap>
<sitemap>
<loc><![CDATA[...]]></loc>
<lastmod><![CDATA[ ]]></lastmod>
</sitemap>
</sitemapindex>
下面是解释代码。 enter image description here
请帮忙,因为我是 golang 的新手。
我只是在路由中传递 xml 文件,并且我还添加了 xml(iewHeader().Add("Content-Type", "text/xml; charset = utf-8")) 的特定标头
handler部分代码:
func (api *SiteMapAPI) SiteMap(template *template.Template) func(w http.ResponseWriter, r *http.Request)
return func(w http.ResponseWriter, r *http.Request)
w.Header().Add("Content-Type", "text/xml; charset = utf-8")
err := template.Execute(w, nil)
if err != nil
WriteErrorResponse(r.Context(), w, http.StatusInternalServerError, err)
路线”
router.HandleFunc("/sitemaps/sitemap.xml", sitemapAPI.SiteMap(handler.ParseTemplate("./web/public/sitemaps/sitemap.xml"))).Methods(http.MethodGet).Name("SiteMap")
【问题讨论】:
i.stack.imgur.com/oLF0N.png 解释代码的链接 显示您的代码。 嘿 burak,如果您能理解这里的问题,请提供帮助,非常感谢。 您使用的是text/template
,还是html/template
?模板执行正在转义这些字符。
我正在使用 html/模板
【参考方案1】:
就我而言,唯一的错误是我导入了错误的包。 我使用的是 html/template,而正确的是 Burak Serdar 指出的 text/template。
【讨论】:
以上是关于使用golang时浏览器错误地解释了xml标签(我认为)的主要内容,如果未能解决你的问题,请参考以下文章