gpt4 book ai didi

reactjs - 如何从 React 组件安全地渲染 Markdown?

转载 作者:行者123 更新时间:2023-12-02 21:17:54 26 4
gpt4 key购买 nike

我想在我的 ReactJS 应用程序中显示 markdown,但安全完成很重要。我将显示的 Markdown 文件是不受信任的公共(public)内容。

我见过各种解决方案,它们都使用危险的SetInnerHTML。

我忍不住想这可能很危险。

大家有什么想法吗?

谢谢

最佳答案

They gave dangerouslySetInnerHTML a scary name very deliberately ,以确保人们会非常仔细考虑他们是否需要使用它/是否正确使用它。看你问这个问题,显然它做得很好!但 Markdown 渲染实际上是必要的一个实例。

基本上,归根结底是:dangerouslySetInnerHTML 只有在您事先不确保放入其中的内容是安全的情况下才是危险的。小心点,但不要被它吓跑!

编辑: 正如 Waylan 在评论中提到的,我给出的示例非常幼稚,没有考虑 other ways XSS attacks can be achieved through Markdown 。您很可能希望通过清理程序运行输出,而不是/以及输入,否则很可能生成恶意 HTML,而不需要执行像嵌入 script 标记这样简单的操作。不过,我的回答的要点仍然是一样的; dangerouslySetInnerHTML 的危险程度取决于您放入其中的内容。做好研究,确保输入安全,就可以了。

关于reactjs - 如何从 React 组件安全地渲染 Markdown?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36585804/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com