为了账号安全,请及时绑定邮箱和手机立即绑定

为什么未关闭的 html 标签会使 html 模板无法在 go 中呈现?

为什么未关闭的 html 标签会使 html 模板无法在 go 中呈现?

Go
慕森卡 2021-09-21 16:25:51
我遇到了一个非常麻烦的问题,我花了大约一个小时才弄清楚问题的原因,但我不知道为什么:我html/template用来渲染一个网页,代码是这样的:t, _ := template.parseFiles("template/index.tmpl")...t.Execute(w, modelView) // w is a http.ResponseWriter and modelView is a data struct.但不知不觉中,我犯了一个错误,<textarea>打开了一个标签:<html><body>        <form id="batchAddUser" class="form-inline">        **this one**  -->  <textarea name="users" value="" row=3 placeholder="input username and password splited by space">            <button type="submit" class="btn btn-success" >Add</button>        </form></body></html>然后 Go 没有给出任何异常和其他提示,只是给出一个没有任何内容的空白页面,状态代码为200.没有提供任何信息,定位问题就起作用了,但为什么会发生这种情况?一个 uncolsed 标签怎么会导致这样的问题?以及如何调试?
查看完整描述

2 回答

?
ITMISS

TA贡献1871条经验 获得超8个赞

Go 的模板包提供了一些方法Must,可以在出现此类错误时通过恐慌使您的程序快速失败。您可以免除一些错误检查的代码,但您仍然可以控制。

t := template.Must(template.parseFiles("template/index.tmpl"))


查看完整回答
反对 回复 2021-09-21
  • 2 回答
  • 0 关注
  • 200 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信