其他¶
错误可以分为三个大类:
1. 资源的错误。
当我们的代码去请求一些资源时导致的错误,比如:
打开一个没有权限的文件,写文件时出现的写错误,发送文件到网络端发现网络故障的错误,等等。
这一类错误属于程序运行环境的问题。
对于这类错误,有的我们可以处理,有的我们则无法处理。
比如,内存耗尽、栈溢出或是一些程序运行时关键性资源不能满足等等这些情况,我们只能停止运行,甚至退出整个程序。
2. 程序的错误。
比如:空指针、非法参数等。
这类是我们自己程序的错误,我们要记录下来,写入日志,最好触发监控系统报警。
3. 用户的错误。
比如:Bad Request、Bad Format 等这类由用户不合法输入带来的错误。
这类错误基本上是在用户的 API 层上出现的问题。
比如,解析一个 XML 或 JSON 文件,或是用户输入的字段不合法之类的。
对于这类问题,我们需要向用户端报错,让用户自己处理修正他们的输入或操作。
然后,我们正常执行,但是需要做统计,统计相应的错误率,这样有利于我们改善软件或是侦测是否有恶意的用户请求。