gpt4 book ai didi

go - 如何在 IRIS 中禁用自动转义

转载 作者:IT王子 更新时间:2023-10-29 02:21:14 27 4
gpt4 key购买 nike

我将 HTML 标签插入到数据库表中:

<table>
<tr>
<td>1</td>
<td>2</td>
<td>3</td>
</tr>
</table>

并将检索到的数据发送到 View 中

func MyEvent(ctx iris.Context){
rows := ...
ctx.ViewData("rows", rows[0])
ctx.View("template.html")
}

如何才能在此事件中禁用自动转义?

最佳答案

如何通过模板获取原始 HTML 并将其输出到输出中取决于您在 Iris 中使用的模板引擎。 Iris supports five template engines out-of-the-box :

如果您使用标准的 html/template 包,那么您可以使用 template.HTML 类型将字符串标记为“安全 HTML”:

ctx.ViewData("rows", template.HTML(rows[0]))

或添加您自己的过滤器,它只执行return template.HTML(s) 并在模板中使用它。

如果您使用 Handlebars,那么您将使用 {{{...}}} in the template or raymond.SafeString in a helper :

{{{yourHTML}}}

如果您使用的是其他模板引擎之一,那么您可以使用它们提供的任何机制来通过模板获取原始 HTML。

当然,所有这些都假定您在 HTML 进入数据库之前或从数据库到模板之前对 HTML 进行清理和清理。

关于go - 如何在 IRIS 中禁用自动转义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48728991/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com