有可能将前端JS搞砸吗?

时间:2017-08-07 11:24:28

标签: javascript

我想仅在字符串的长度小于200且大于5时才向服务器发送AJAX请求。

使用if语句检查客户端的规则:

if (textLen < 200 && textLen > 5) {
    // send ajax
}

任何用户都可以像增加字符长度一样操作前端脚本吗?

如果是,怎么样?如果不是,最好是在客户端验证数据吗?

前提是服务器限制来自mydomain.com

以外的所有外部来源的发布请求

3 个答案:

答案 0 :(得分:2)

是的,很容易在客户端更改变量值。只是不要依赖客户端验证。 不要认为在客户端成功完成的验证是100%完美的。始终信任/依赖于您的服务器端验证。这是最好的。

答案 1 :(得分:1)

是的,任何人都可以更改客户端代码并删除验证检查。所以总是在服务器端处理验证。

答案 2 :(得分:0)

是。可以更改从服务器收到的任何代码以显示网页。按键盘上的“F12”并开始修改。

关于您提出的代码问题,我假设您希望客户端检查字符串的长度是否适合最小长度和最大长度。名称表明变量包含文本,如果是,请将代码修改为:

if (textLen.length < 200 && textLen.length > 5) {
    // send ajax
}

要修改客户端上的代码,所以在它到达服务器之前,打开浏览器的开发工具(对于大多数浏览器来说是F12)。双击您想要更改的内容。

但是,为确保服务器上的内容不被接受,您应始终验证服务器端的所有内容。因此,在继续对其进行任何操作之前,服务器还应检查最大字符串长度为200且最小长度为5的要求。当然,这是在其他检查旁边,例如检查任何不需要的代码,空格等等。