html - 网络应用程序用户错误纠正的普遍共识是什么?

标签 html

我正在构建一个 RoR 站点,今天我完成了分页。在向我的同事展示它后,他的第一个问题是“如果将查询字符串设置为“?page=-1”会发生什么。它因运行时异常(错误 500)而终止。他建议在这个站点之前绝对应该修复它去任何靠近现场的地方。

我碰巧不同意他的观点(听我说完)。现在,我已经从事网络开发业务四个月了,所以我很可能是错的。但我认为这没什么大不了的。我认为,只要所说的错误不构成安全风险,这样的事情就不应该是优先事项。导致此错误的唯一方法是,如果您手动编辑查询字符串,那么,垃圾进垃圾出。如果您足够聪明,知道您甚至可以编辑查询字符串,那么您应该足够聪明,不会给它一个负数。

关于此类事情的普遍共识是什么?您是否完全对网站进行了白痴验证,以便无论查询字符串是什么,您都不会产生错误?只要它按照预期的方式工作(并且不会暴露安全风险),您是否会放任自流?在中间的某个地方?

编辑:不知何故,我的问题并没有完全按照我的预期出现。我的问题的症结在于,在主动纠正事情与不做事情之间划清界线在哪里。例如,如果在 get 字符串中有无效输入,最好的做法是按照发布的回复中的建议显示有品位的错误,或者尝试弄清楚用户在做什么,然后去做。或者,作为一个更具体的例子:如果用户在 get 字符串中设置 page=-1,是否最好默默地假设它们意味着 page=0,或者显示某种有品位的错误页面,比如“指定的无效页面”之类的东西“?

最佳答案

您应该在检查来自查询字符串的任何内容时出错。如果您获得无效的页码,您应该会看到一条比错误 500 页面更优雅的错误消息。也许是 sorry, bad request. Try this: <possible suggestions> . 有意和故意在实时网站上留下一个容易发现的错误,这简直是草率和不专业。

您说您是 Web 应用程序的新手,但如果您之前的开发经验是“普通大众”(非开发人员、非技术人员)使用的其他 GUI 应用程序,那么有堆栈跟踪是否可以当应用程序在他们周围分崩离析时扔到用户的脸上?根据我的经验,这绝对是 Not Acceptable 。

关于html - 网络应用程序用户错误纠正的普遍共识是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4036765/

相关文章:

php - 如何摆脱CKEditor中的大间距?

javascript - jQuery 中的样式代码不起作用

html - 寻找 HTML 目录生成器

javascript - 如何在 Angular 中实现打印功能?

javascript - "Eliminate render-blocking JavaScript in above-the-fold content"即使所有JS都在页面底部?

javascript - 向下滚动时运行 JavaScript

html - 如何在我的案例中显示元素的填充?

html - 为什么 `ul` 具有 ARIA 角色 `menu` 但 `menuitem` 被禁止用于 `li` ?

html - CSS将文本移动到水平菜单上的新行

html - 样式的简单形式