异常报告级别控制
同时, Saber亦支持以温和的方式来对待异常, 以免使用者陷入在不稳定的网络环境下, 必须在每一步都使用try包裹代码的恐慌中:
设定errorReport级别, 它是全局生效的, 对已创建的实例不会生效.
// 启用所有异常但忽略重定向次数过多异常
SaberGM::exceptionReport(
HttpExceptionMask::E_ALL ^ HttpExceptionMask::E_REDIRECT
);
掩码表
下面的值(数值或者符号)用于建立一个二进制位掩码,来制定要报告的错误信息。可以使用按位运算符来组合这些值或者屏蔽某些类型的错误。标志位与掩码
Mask | Value | Intro |
---|---|---|
E_NONE | 0 | 忽略所有异常 |
E_REQUEST | 1 | 对应RequestException |
E_CONNECT | 2 | 对应RequestException |
E_REDIRECT | 4 | 对应RequestException |
E_BAD_RESPONSE | 8 | 对应BadRException |
E_CLIENT | 16 | 对应ClientException |
E_SERVER | 32 | 对应ServerException |
E_ALL | 63 | 所有异常 |