使用PUG模板如何正常渲染MongoDB中存储的带HTML标签的字符串
实现方法
PUG提供了非转义输出的专用语法,你只需要修改模板里的渲染标记即可:
- 你当前使用的
=是PUG的转义输出语法,会自动把HTML特殊字符转为实体编码,符合默认安全规则,对应写法:
.profile p= user.profile
- 如果你确认字段内容安全,需要直接解析为HTML元素,改用
!=非转义输出语法即可:
.profile p!= user.profile
注意:该写法会跳过PUG默认的安全转义机制,如果
user.profile字段支持普通用户自主编辑提交,建议提前对内容做XSS过滤,仅放行<strong>、<em>等安全白名单标签,避免恶意脚本注入风险。
内容的提问来源于stack exchange,提问作者Alim Bolar
相关产品推荐
相关产品推荐

