Java 版 Rapid SDK 中的异常处理
有关 Java 版 Rapid SDK 中的异常处理的指南
Java 版 Rapid SDK 使用运行时(未经检查的)异常以传递错误。异常层次结构的根源为 ExpediaGroupException
,所有其他异常都从这里衍生。ExpediaGroupException
永远不会直接引发。
ExpediaGroupException
有两类:
ExpediaGroupServiceException
:下游服务返回错误响应时引发。即服务成功接收到请求,但无法进行处理。异常对象向调用者提供有关错误的多条信息,包括 HTTP 状态代码和详细消息。ExpediaGroupAuthException
是该异常的子类型,身份验证失败时引发。ExpediaGroupClientException
:在尝试发送请求或解析响应时引发客户端错误。例如,如果未配置凭据,则会引发ExpediaGroupConfigurationException
。
由于异常未经检查,由调用者决定处理哪些异常。原则上,假定 ExpediaGroupClientException
不可重试,且通常应在开发期间被修复。另一方面,ExpediaGroupServiceException
可能是可恢复的,例如由于服务暂时不可用而导致的错误。因此,错误处理应侧重于后者。