go模板实现 用户输入的内容不被转译,自定义safe函数

在这里插入图片描述
因为默认的话html/template是全部转译的,像下图所示:
在这里插入图片描述

想要实现的效果是 :不解析这句
<script> alert(123)</script>
解析这句:

<a href='http://liwengezhou.com'>参考李文周博客</a>

下面实现:
在这里插入图片描述
备注:用New定义一个模板,再给它添加我们自定义的函数safe,这样我们在模板里面就可以通过safe找到这个函数
在这里插入图片描述
备注:
把.str2的值当做参数 通过管道符(pipeline) 传递给 safe,然后safe去找我们在func xss里面定义的函数safe,它就会把传来的字符串转换成一段html代码,导致它就不会被转译了

发布了100 篇原创文章 · 获赞 15 · 访问量 4万+

猜你喜欢

转载自blog.csdn.net/qq_37767455/article/details/104650328