处理例外的设计 - 谷歌应用引擎

sha*_*nyu 6 python google-app-engine exception-handling web-applications

我正在谷歌应用引擎(webapp框架)上开发一个项目.我需要你的人来评估我如何处理异常.

我正在处理4种类型的例外:

  1. 编程异常
  2. 用户输入不好
  3. 网址不正确
  4. 查询字符串不正确

以下是我处理它们的方法:

  1. 我已经将webapp.requesthandler类子类化,并覆盖了handle_exceptions方法.每当发生异常时,我都会将用户带到友好的"我们很抱歉"页面,同时向管理员发送带有回溯的消息.

  2. 在客户端,我(将)使用js并在服务器端验证.除了根据编程逻辑验证输入(检查:现金输入是浮动类型?)和业务规则(检查:用户是否有足够的点来采取该行动?),我在这里(作为具有非网络经验的编码器) ,我还要检查恶意意图.我应该采取什么措施来对付恶意行为?

  3. 我有一个处理错误URL的catch-all URL.也就是说,我将用户带到一个自定义的"页面不存在"页面.我想在这里我没有任何问题.

  4. 错误的查询字符串可能会引发异常,如果留给他们自己.如果ID不存在,则该方法返回None(异常即将发生).如果参数不方便,代码会引发异常.在这里,我认为我必须提出404并将用户带到自定义"页面不存在"页面.我该怎么办?

你有什么看法?提前致谢..

Ser*_*erx 5

你似乎已经很好地思考了事情.我唯一要补充的是你可能想看一下Bloog作为例子.Bloog是一个用Python编写的用于App Engine的非常好的开源博客引擎.

此外,在Point#2上,请注意这些类型Cross Scripting攻击.

至于#4,请记住,404页面是为您的设计添加一些色彩和创造力的机会.