首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

为什么Handlebar {{body}}收不到html格式的标签?

Handlebar是一个JavaScript模板引擎,用于生成动态的HTML页面。它的语法类似于Mustache,通过使用双大括号{{}}来标记变量或表达式。

在Handlebar中,当我们使用{{body}}来输出内容时,它会默认进行HTML转义,将特殊字符转换为HTML实体,以防止XSS攻击和其他安全问题。这意味着如果我们将包含HTML标签的内容赋值给{{body}},它将被转义为实体,而不是被解析为HTML标签。

如果我们希望{{body}}能够接收并解析HTML格式的标签,我们可以使用Handlebar提供的三个特殊标签:{{{}}}、{{&}}和{{html}}。

  1. 使用三个大括号{{{}}}:当我们使用{{{body}}}时,Handlebar将不会对内容进行HTML转义,直接将内容作为原始HTML标签输出。但是需要注意的是,这种方式可能存在安全风险,因为没有对内容进行转义,可能会导致XSS攻击。
  2. 使用{{&}}:当我们使用{{&body}}时,Handlebar也不会对内容进行HTML转义,直接将内容作为原始HTML标签输出。与{{{}}}类似,这种方式也存在安全风险。
  3. 使用{{html}}:当我们使用{{html body}}时,Handlebar会将内容作为原始HTML标签输出,同时会对内容进行HTML转义,以确保安全性。

综上所述,如果Handlebar的{{body}}无法接收HTML格式的标签,可以尝试使用{{{body}}}、{{&body}}或{{html body}}来输出原始HTML标签。但是需要注意,使用这些方式时要确保内容的安全性,避免潜在的安全风险。

腾讯云相关产品和产品介绍链接地址:

  • 腾讯云云服务器(CVM):https://cloud.tencent.com/product/cvm
  • 腾讯云云原生容器服务(TKE):https://cloud.tencent.com/product/tke
  • 腾讯云云数据库MySQL版:https://cloud.tencent.com/product/cdb_mysql
  • 腾讯云对象存储(COS):https://cloud.tencent.com/product/cos
  • 腾讯云人工智能:https://cloud.tencent.com/product/ai
  • 腾讯云物联网平台(IoT Hub):https://cloud.tencent.com/product/iothub
  • 腾讯云移动推送(TPNS):https://cloud.tencent.com/product/tpns
  • 腾讯云区块链服务(BCS):https://cloud.tencent.com/product/bcs
  • 腾讯云游戏多媒体引擎(GME):https://cloud.tencent.com/product/gme
页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

asp dotnet core 实现服务器发送事件 Server-Sent Events 简单方式

在客户端开发时可以通过轮询的方式拿到服务器端的数据,同时在客户端开发时,如果是将客户端也作为服务器端,那么之间的通讯将会十分简单。有个逗比的小伙伴想要用我的客户端魔改,但是他又不想学习什么知识,此时他需要拿到我客户端的实时信息,好在他知道一点 html 的知识,于是让我通过服务器发送事件 Server-Sent Events 而他写一个简陋的 html 去拿到我客户端的数据 这是一个简陋的开发端的工具,开源的好处就是,你觉得不爽,自己改哇。自己改不动就等开发者下班协助啦,本文就使用一个简单的方式在 asp dotnet core 实现服务器发送事件。虽然标题是 asp dotnet core 而实际上我的软件是一个桌面端软件

01
领券