例外處理
快速找到錯誤並修正,以提供最佳客戶體驗
Expedia Group 的 Java 版 XAP SDK 採用執行時期 (未檢查) 例外來傳遞錯誤。例外的根階層為 ExpediaGroupException,所有其他例外都由此衍生,絕不會直接丟出 ExpediGroupException。
ExpediaGroupException 分為兩類:
ExpediaGroupServiceException:下游服務回傳錯誤時丟出,也就是說,服務成功接收到要求但無法處理。例外物件提供呼叫函式多項關於錯誤的資訊,包含 HTTP 狀態碼和詳細訊息。ExpediaGroupAuthException是該例外的子類別,會在認證失敗時丟出。ExpediaGroupClientException:用戶端出現錯誤時丟出,無論是在嘗試傳送要求或剖析回應時。例如,如果未配置登入資訊,則會丟出ExpediaGroupConfigurationException。
由於例外未經檢查,要處理哪些例外由呼叫函式決定。原則上,假設 ExpediaGroupClientException 是不可重試的,通常應於開發期間修復。而 ExpediaGroupServiceException 則可以恢復,例如服務暫時無法使用而導致的錯誤。因此,錯誤處理應著重於後者。