首页 > 后端开发 > Golang > 正文

+ 在 base64 中使用 html/template golang

WBOY
发布: 2024-02-14 18:00:11
转载
1055 人浏览过

+ 在 base64 中使用 html/template golang

php小编新一在这篇文章中将为您介绍在使用golang的html/template模板中如何在base64中嵌入图片。在web开发中,经常会遇到需要将图片以base64的形式嵌入到html模板中的情况。这种做法可以减少http请求,提高网页加载速度。本文将详细讲解如何使用golang的html/template包来实现这一功能,使您的网页加载更加高效。

问题内容

向地鼠同胞致敬。

我需要在 html 模板中以 base64 形式返回数据矩阵。 在模板中它看起来像这样。 <img src="data:image/png;base64,{{.Datamatrix}}" alt="Datamatrix"/>

我将我的 Base64 数据插入到 .Datamatrix 中。一切都很好。 Base64 是有效的并且全部(在不同的解码器上检查),但是当我将数据传递到模板 +(plus) 符号时,符号更改为 &#43

像这样进行base64编码: base64.StdEncoding.EncodeToString(b)

也尝试过 base64.URLEncoding.EncodeToString(b) ,但是更多的符号变得混乱。

将参数作为字符串类型的结构字段传递

尝试以不同的方式传递它:作为类型template.HTML,使用template.HTMLEscapeStringtemplate.URLEscapeStringtemplate.JSEscapeString,但没有结果。

我们将非常感谢此问题的有效解决方案。

示例 https://go.dev/play/p/c_s-wPl6dMT

github上的相关问题:https://github.com/golang/go/issues/42506

P>S> 更改为文本/模板也不是一个选项。在实际项目中,我还有一些东西注入到模板中,但它们根本无法与文本/模板库一起使用。

解决方法

令人惊讶的是,足够的文本/模板解决了所有问题。并且没有对其他注射造成任何新的问题。

https://www.php.cn/link/c1e247e2235eb596c080297d6903cf39

以上是+ 在 base64 中使用 html/template golang的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:stackoverflow.com
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板