[英]Safe HTML in ASP.NET Controls
我相信这是一个常见问题......
我希望用户能够输入和格式化描述。
现在我有一个多行文本框,他们可以输入纯文本。 如果他们可以做一些html格式化会很好。 这是我要处理的事情吗? 解析输入并仅验证是否存在“安全”标签,如<ul><li><b>
等?
我将此描述保存在SQL数据库中。 为了正确显示这个HTML,我需要在页面上使用文字并将其转储到适当的区域,还是可以更好地控制我正在做的事情?
此外,是否有像SO上的免费控件用于用户输入/次要编辑?
此外,是否有像SO上的免费控件用于用户输入/次要编辑?
Stackoverflow使用WMD控件和markdown,如下所述:
http://blog.stackoverflow.com/2008/09/what-was-stack-overflow-built-with/
您需要检查输入的标签以避免跨侧脚本攻击等。您可以使用正则表达式检查任何标签是否在您拥有的“白名单”上并删除其他任何标签。
您可以查看此链接以获取富文本编辑器列表。
除了其他答案之外,您还需要在包含文本框的页面的@Page指令中设置ValidateRequest =“false”。 这将关闭阻止从文本框发布HTML的标准ASP.NET验证。 然后,您应该使用自己的验证例程,例如@PhilPursglove提到的例程。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.