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

什么是上下文感知变量?

什么是上下文感知变量?

Go
紫衣仙女 2021-09-13 10:44:59
我听到有人谈论 Go 在使用 HTML 时如何很好地实现“上下文感知变量”。它们是什么以及它们如何工作?我猜因为它与安全性有关,所以它是某种知道它是否已经过消毒的变量。它是否类似于unsanitizedString在转换为普通字符串时自动清理内容的类?
查看完整描述

1 回答

?
摇曳的蔷薇

TA贡献1793条经验 获得超6个赞

HTML /模板包是上下文感知。

这个包理解 HTML、CSS、JavaScript 和 URI。它为每个简单的操作管道添加了消毒功能

因此,如果您有Foo包含的变量<script>alert('you have been pwned')</script>并将其打印在 html 元素中,<p>{{.Foo}}</p>Foo 将被正确转义以避免脚本注入。

使用时html/template,如果您想在应该发生转义时覆盖,则必须向变量添加显式类型。

这是一个例子


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

添加回答

举报

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