我正在开发一个Web应用程序项目(在java中;并不重要),我们有一个带有下拉列表和输入字段的表单。
显然提供了下拉列表,因为我们期望来自一组值的特定值。
所以我的问题是:确保提交的值是否在预期值集合中是否有意义?或者只是假设正确值正在接受是否可以接受?
提交的不同值不会产生任何“错误”, 但数据存储与业务规则/要求不一致。
答案 0 :(得分:2)
您肯定应该验证提交的值是否在预期值集合中。使用firebug提交你想要的下拉列表是琐碎的。
答案 1 :(得分:2)
最佳实践:假设每个用户都是一个肮脏的黑客,他们会为您提供服务,并会竭尽全力让您的网站崩溃。
因此,必须在服务器端验证所有数据。
黑客不使用您的表单。他们创建随机表单数据并通过其他方式提交。 事实上,黑客甚至不知道你的网站做了什么 - 他们的扫描仪只是在你的网站上徘徊,并提交随机的东西。
我使用广泛的客户端验证(c#验证器)并验证表单上的每个字段。这样,当用户使用我的表单时,当最终命中服务器时,数据应该是好的。
但是,我们仍然得到糟糕的数据!这是黑客使用他们自己的工具探测网站。
这不像我们是一个好目标 - 我们没有任何财务记录暴露在网络中,那么什么?如果你免费使用我们的网站。问题在于黑客不知道这一点,并且正在进行探索。