Go-ForIt 记事:eXtreme DragonSlayers 专题报告,第 6 部分: 有价值,却又让人烦恼的技术 — 数据确认和验证
2009-11-06 00:00:00 来源:WEB开发网使用上面的脚本,如果用户向 firstName 域输入空值,就会显示一个警告窗口。 而且,当按下 Submit 按钮时, checkForm 例程就会运行。这个例程检查表单中的一些域并整理错误,还通过返回 false 防止表单被提交。提交表单后消息或警告框中立即列出所有的错误,并使用域的 focus() 方法让用户返回到第一个要纠正错误不正确的域。
要考虑的问题
下面是我们在实现 GoFor-It.com 的客户端确认时面临的一些重要的问题。
无效数据
我认为这是客户端确认的最重要的问题。使用 JavaScript 时,即使您同时执行瞬时和批处理检查,仍有可能向服务器发送无效数据。即使大多数用户都不会这样做,但某个恶意的人却可以钻空子。用户可以用同一个表单创建一个新的 HTML 页面而不进行错误检查。如果服务器脚本不检查数据,要么数据库抛出异常,要么数据库安全会受到影响。
从理论上来说(因为我自己没做过),您可以通过比较作为 HTTP 请求的一部分发送的 HTTP 头信息来防止遭到黑客攻击。如果页面源不是您期望的,您可以拒绝并重新装入页面。但我们知道甚至这也可能遭到黑客攻击。表单和 onsubmit 函数的参数都可以在浏览器的地址栏被覆盖。例如,在我们的注册表单上,在浏览器地址栏我们运行下面的命令 javascript:document.forms[0].onsubmit=alert("hi") , 覆盖 onsubmit 函数的参数并允许您发送表单而无需进行任何确认。您还可以运行下面的命令,这条命令会将“Nothing”值放入名称域:
javascript:document.forms[0].firstName.value="Nothing"
浏览器不支持 JavaScript
尽管大多数浏览器都支持 JavaScript,但有些用户可能没有把它变为可用。 这个 developerWorks "Cranky User" 专栏中讨论了 JavaScript 的依赖性问题。
- ››Godaddy域名解析使用DNSPOD方法
- ››GOV.CN域名解析修改
- ››Google搜索引擎的奥秘
- ››Google测试搜索结果页面右侧内容更丰富的信息栏
- ››Google Dart精粹:应用构建,快照和隔离体
- ››google的代码审查
- ››google analytics清晰追踪爬虫的爬行信息
- ››Google+中文用户在两千万Google+大军中是少数派
- ››Google AdWords最昂贵点击成本的20种关键词分类
- ››Google运作经理Bryan Power给出的GOOGLE求职意见
- ››Google用户体验的十大设计原则
- ››Google Analytics(分析)能为网站带来什么
- 中查找“Go-ForIt 记事:eXtreme DragonSlayers 专题报告,第 6 部分: 有价值,却又让人烦恼的技术 — 数据确认和验证”更多相关内容
- 中查找“Go-ForIt 记事:eXtreme DragonSlayers 专题报告,第 6 部分: 有价值,却又让人烦恼的技术 — 数据确认和验证”更多相关内容
- 上一篇:Go-ForIt 记事:eXtreme DragonSlayers 专题报告,第 9 部分: 避开继承的高“税收”
- 下一篇:Go-ForIt 记事:eXtreme DragonSlayer 专题报告,第 5 部分: 视图 bean:将 Java 代码与 JSP 组件分离
更多精彩
赞助商链接