我有一個消耗REST API的方法,可以收到一個OK回應物件(我稱之為MyObject)或一個錯誤物件(MyError)作為回應。此時,我的方法將不得不回傳 MyObject 或 MyError,我應該如何處理它?
我的想法是創建一個包含 MyObject 和 MyError 的 HandleResponse 物件,并回傳這個物件。然后在呼叫類中,我檢查這兩個物件中的哪一個是空的,從而對另一個物件進行處理。這是否正確,或者是否有更正確的管理方式?
uj5u.com熱心網友回復:
你提出的方法是可以的,事實上,類似的東西是函式式編程用來處理這種情況的方法。在vavr庫(https://www.vavr.io/)中,一個為java添加函式式編程功能的庫,有一個叫做Either的單體,它的作用完全相同。
它是一個具有兩個通用型別Either<E, T> 的物件,其中E是錯誤物件的型別,T是成功答案的型別。而你可以在這兩部分(錯誤或成功)上對這些物件應用不同的轉換,以應用兩種情況下所需的邏輯。 如果你對如何應用感興趣,你可以訪問https://www.baeldung.com/vavr-either。
。如果 API 呼叫中的錯誤也意味著您自己的應用程式中的錯誤,那么另一個選擇是在 API 回傳錯誤時拋出一個例外,并對其進行適當處理,以便該方法僅回傳成功的情況
。轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/329119.html
標籤:
上一篇:錯誤MSB4095:如何在VisualStudio專案屬性對話框中正確添加額外設定?
下一篇:Flutter如何避免負值
