经常会在前台做各种check,比如某域是否为空、不能为英数字、日期不能大于现在时间等等,只有所有check都通过了,才能提交表单。
比如这样
<script> $("#submitbtn").click(function(){ //check ............ document.forms[0].submit(); }); </script> <form> <input type="button" id="submitbtn" value="ok"/> </form>
其实这样做很不靠谱。
如上代码,只要用chrome的开发工具,进入debug模式,然后在Watch Expressions里面直接输入
document.forms[0].submit();
就能绕过check,直接提交表单,这对于后台来说简直是一个灾难。
因此从安全的角度来说,所有check都得在后台做来得保险,前台check只能是降低数据提交次数的一种手段,而不是最终check。