如何验证和清理任意字符串输入的输入以用作URL的一部分

时间:2016-09-09 06:31:57

标签: javascript validation url uri sanitization

我有一个应用程序,允许用户创建带标题的笔记。它使用这些标题作为笔记本身的URL的一部分,以使URL更易于阅读。

我正在尝试设计最好的方法来消毒输入并向用户提供他们可能放入的非法的反馈。

到目前为止,我认为我会使用抓取并存储输入。修剪它并将其传递给encodeURIComponent。我将其输出传递给decodeURIComponent。如果我们有错误,decodeURIComponent的结果将与原始输入相差。系统将提醒用户不要使用与diff不匹配的字符。

这种方法有什么明显错误吗?还有更好的方法吗?

1 个答案:

答案 0 :(得分:1)

这种方法已经足够了,但是通过显示与差异不匹配的字符向用户显示“问题区域”肯定是他们计划更直接,有针对性的攻击的推动力。不清楚说明禁止的内容;用户将找到绕过并理解您当前黑名单的新技术,并可以计划更集中的攻击。<​​/ p>