【发布时间】:2010-10-24 06:07:33
【问题描述】:
我正在开发一个关于谷歌应用引擎(webapp 框架)的项目。我需要你们评估我如何处理异常。
我正在处理 4 种类型的异常:
- 编程异常
- 错误的用户输入
- 网址不正确
- 查询字符串不正确
我是这样处理它们的:
我已经继承了 webapp.requesthandler 类并覆盖了 handle_exceptions 方法。每当发生异常时,我会将用户带到一个友好的“我们很抱歉”页面,同时向管理员发送一条带有回溯的消息。
在客户端,我(将)使用 js 并在服务器端进行验证。 在这里,除了根据编程逻辑(检查:现金输入是否为浮点类型?)和业务规则(检查:用户有足够的积分来执行该操作吗?)验证输入之外,我认为(作为具有非 Web 经验的编码器) ,我还必须检查恶意意图。我应该采取什么措施来应对恶意行为?
我有一个处理错误 URL 的包罗万象的 URL。也就是说,我把用户带到了一个自定义的“页面不存在”页面。在这里我认为没有问题。
如果留给它们自己,不正确的查询字符串可能会引发异常。如果 ID 不存在,则该方法返回 None(正在发生异常)。如果参数不方便,代码会引发异常。在这里我想我必须提出一个 404 并将用户带到自定义的“页面不存在”页面。我该怎么办?
你有什么看法?提前谢谢..
【问题讨论】:
-
在客户端对恶意输入进行验证是没有意义的——任何恶意用户只会禁用或逃避它。
-
好的,我在服务器端怎么办?
标签: python google-app-engine exception-handling web-applications