Javascript 如何安全地显示用户提交的html内容?
我正在使用stack overflow样式将图像和格式添加到帖子中[尽可能通过stack overflow post编辑工具],因此我为演示文稿生成了可用于在页面上显示的htmlJavascript 如何安全地显示用户提交的html内容?,javascript,html,security,web,Javascript,Html,Security,Web,我正在使用stack overflow样式将图像和格式添加到帖子中[尽可能通过stack overflow post编辑工具],因此我为演示文稿生成了可用于在页面上显示的html 但问题是如何显示html,当我试图显示html时,它会打印在页面上,如“blah bhlah”。如何在我的网页上安全地转义此html内容?在您的案例中发生的是,html正在转义,因此呈现为文本 我不知道你是用什么语言写的,但我怀疑你使用了内置的文本转义功能。这会将HTML呈现为文本,但这不会使其安全 我怀疑您正在寻找的
但问题是如何显示html,当我试图显示html时,它会打印在页面上,如
“blah bhlah”
。如何在我的网页上安全地转义此html内容?在您的案例中发生的是,html正在转义,因此呈现为文本
我不知道你是用什么语言写的,但我怀疑你使用了内置的文本转义功能。这会将HTML呈现为文本,但这不会使其安全
我怀疑您正在寻找的解决方案将:
- 附加的
标记以转义包装元素 - 某些字符组合可能看起来不像有效的HTML,但其行为却与之类似
- 利用页面上已有的一些Javascript
- 添加CSS以破坏页面布局
然后需要显示原始输出。在Asp.NETMVC中,它是@Html.Raw(x=>x.SomePropertyThatIsHtml)。如果您使用的是其他内容,它应该有一个等价物来防止它被编码。此页面有一些您正在寻找的答案,您想打印HTML源代码(看起来像
Foo
),还是想在页面中包含HTML(这样abobe将显示为标题“Foo”)?不清楚