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

如何呈现带有链接但没有其他 html 的用户帖子?

如何呈现带有链接但没有其他 html 的用户帖子?

Go
GCT1015 2022-12-26 10:21:18
我正在建立一个类似于 Twitter 的网站。用户可以发帖并使用该@username符号提及另一个用户。起初我打算解析每个帖子服务器端并在 周围添加 html 标签@mentions,然后将帖子呈现为template.HTML(我正在使用Go服务器端),但后来我意识到用户可以添加他们想要的任何 html,并且我不想要那个。有没有办法html在忽略html用户尝试上传的任何内容的同时呈现帖子?他们上传的任何代码/标记都应以纯文本形式显示。@mentions或者使用在客户端周围添加标记会更好javascript吗?
查看完整描述

1 回答

?
慕容森

TA贡献1853条经验 获得超18个赞

好担心!这种来自用户输入的 HTML 注入是一个真正的问题,幸运的是,有一个简单的解决方法,您可以转义 HTML 字符,以便浏览器理解文本中有一个文字“<”字符,而不是 HTML 元素的开头。

在 Go 中,有html.EscapeString,您可以将其传递给用户输入,然后可以在 HTML 中安全地使用它。所以你会清理输入,然后解析它并链接@mentions.


查看完整回答
反对 回复 2022-12-26
  • 1 回答
  • 0 关注
  • 52 浏览
慕课专栏
更多

添加回答

举报

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