我需要遍历所有表单元素,并从中获取文本并提取任何不需要的值。值如':,.{}\|*&^%$#@!~`?/
等,以确保我的网站上没有任何注射攻击。我是javascript noob,我需要一些帮助来做到这一点。遍历所有表单元素
有什么建议吗?
我需要遍历所有表单元素,并从中获取文本并提取任何不需要的值。值如':,.{}\|*&^%$#@!~`?/
等,以确保我的网站上没有任何注射攻击。我是javascript noob,我需要一些帮助来做到这一点。遍历所有表单元素
有什么建议吗?
在服务器端进行验证。
这将是:-)
更安全有更安全的我的意思是用户不能玩的验证代码,使其因此他或她输入的经历时,他们不应该。
,或者如果用户关闭的JavaScript,你有没有服务器端验证,那么你的输入是不是在所有验证。
如果你必须这样做,这里是一个基地(香草JavaScript的,没有库)从工作:
var els = document.forms[0].elements;
for (var el in els) {
var val = el.value;
if (/[':,.{}\|*&^%$#@!~`?/]/.test(val)) {
// Potential issue, do your repairs here
el.value = fixedValue;
}
}
编辑:摆脱该死,我敢肯定,我应该已经逃脱的东西但我并不在乎。 :)
+1。但是,如果你这样做,一定要做服务器端验证。如前所述,客户端验证很容易绕过。 –
+1。虽然没有必要逃离管道(或其他任何东西)。 –
这看起来不错。谢谢。我也做服务器端验证。这只是我对JavaScript的糟糕...... – SoftwareSavant
您是否反对使用[jQuery](http://jquery.com/)等库? –