{{#选项}}
在上面的把手文件中,我们用以下代码替换了属性,并且它按预期工作,
属性:“data=#{dataContext.id.toString()} style= width:70px; ”
这在 3.0.3 版本中完美运行并正确解释为以下代码,
数据=“5336686”样式=“宽度:70px; ”
但是当我们升级到 3.0.5 时,上面的代码被破坏并给出了以下编码代码输出,
data=5339575 style=width:70px;
据我了解,所有的小版本和补丁版本都是向后兼容的。 我想知道我们应该修改上面的代码还是可以在下一个小版本中恢复? 这给我们造成了一个主要的生产问题:(提前致谢!
我们有完全相同的问题。 在我们的例子中,我们有 base64 编码的字符串,否则会保持不变,但任何尾随的=
字符都会转换为=
。
+1,这里的问题完全相同。
你好。 很抱歉,如果此更改给您带来问题。 它是通过#1083 引入的。 我已经发布了它以响应 #1454,它引用了节点安全数据库中的一个条目。
但你是对的。 已记录转义字符列表,因此这是一个重大更改。
我将还原它,但我也会听取希望进行更改的人的意见。
更新:不,我现在不打算恢复它。 对不对,我住的时候已经是半夜半了,所以我要睡觉了,想想这个。
@rhariraman顺便说一句:您正在以可能导致漏洞的方式使用缺少“=”-转义(请参阅https://github.com/wycats/handlebars.js/pull/1083#issuecomment-134733449)
安全修复在 3.0.6 版中恢复
不再转义等号。
@nknapp 非常感谢:)
最有用的评论
我们有完全相同的问题。 在我们的例子中,我们有 base64 编码的字符串,否则会保持不变,但任何尾随的
=
字符都会转换为=
。