0
A
回答
1
一件事很多人似乎忘記了是個什麼模式真的是MVC。大多數情況下,它們只是數據庫的抽象層,但它們不一定是。它們也可以是與外部API交互的服務。所以說,當我在一個使用外部API的網站上構建一個功能時,我通常從爲該API創建模型開始。然後,我嘗試將方法命名爲儘可能類似於Eloquent
方法,只是因爲這是我最習慣的方式,並且傾向於最有意義。
這些方法只是與API交互,甚至可以使用API的結果來填充集合對象。這個想法是設計你的模型的方式,你甚至不覺得你正在與第三方API交互。
在模型之上,我還將構建一個存儲庫,其中將包含應用程序與API進行交互所需的任何業務邏輯。例如,如果您需要從API中獲取特定項目,則可能需要首先檢查自己的數據庫以獲取緩存版本。如果沒有,請從API和緩存/重新緩存中獲取該項目,然後將結果返回到控制器。
然後,您會將資源庫注入控制器,並根據需要執行任何操作。
此外,它可能非常明顯,但API密鑰和API入口點在您的配置文件或.env文件中會很順利,具體取決於您使用的是哪個Laravel版本。如果第三方提供您想要使用的更新的API版本,在您需要更新模型的情況下,最好還是使用服務提供程序來管理依賴注入。在這種情況下將模型編碼到界面有可能在稍後爲您節省一些麻煩。
最後一個注意事項是,在開始之前,先檢查包裝盒。重新發明輪子沒有意義。
相關問題
- 1. 乾淨的解決方案不乾淨FakesAssemblies?
- 2. 乾淨的ASP.Net動態條目錶行的解決方案
- 3. 的Visual Studio/MSBuild的 - '乾淨' 解決方案
- 4. 乾淨的解決方案知道哪個MKAnnotation已被挖掘?
- 5. 乾淨的解決方案,以字符串內計數
- 6. Swift - WebView HTTP驗證 - 最乾淨的解決方案
- 7. 純淨的ColdFusion解決方案可以實現乾淨的URL嗎?
- 8. C#MVC:ModelBinder的案例,還是不是?尋找「最乾淨」解決方案
- 9. 在RESTful API中使用乾淨網址
- 10. 在Laravel 4.2中使用PHPExcel生成報表的解決方案
- 11. 提取準備好的語句邏輯的最乾淨的解決方案
- 12. 不同可能的流,尋找一個乾淨的解決方案
- 13. 多語言CMS - 一個乾淨,可維護的構建解決方案?
- 14. 在vs2015解決方案中使用Angular2?
- 15. 在Hybris解決方案中使用CDN
- 16. Laravel乾淨的代碼
- 17. Laravel驗證登錄解決方案
- 18. 乾淨API設計
- 19. API文檔的Wiki解決方案?
- 20. MVC 4 web api +在1解決方案中的應用
- 21. 在SharePoint 365上使用解決方案
- 22. 在Visual Studio中構建解決方案,重建解決方案和清理解決方案的區別?
- 23. 在Go中支持動態結構字段的乾淨解決方案是什麼?
- 24. 是否有乾淨的解決方案來實現包容性啓動,在QueryDSL/Oracle SQL中獨佔結束?
- 25. MSBuild解決方案與解決方案中的項目引用的DLL
- 26. 使用AWS的羣聊解決方案
- 27. 使用gwt的插件解決方案
- 28. VS 2010解決方案取決於另一個解決方案
- 29. VB.NET解決方案中的間接引用解決方案構建
- 30. 的SharePoint Visual Studio解決方案在解決方案庫中不可見
我剛讀了這本書https://leanpub.com/build-apis-you-wont-hate。這是一個關於如何構建API的非常好的資源,大多數示例使用Laravel。 – user3158900
對不起,您可能錯誤地閱讀了這個問題。我已經知道如何使用Laravel構建API。我正在尋找在Laravel中使用外部API的最佳和最簡潔的方式。 –
哦,很抱歉,再次閱讀後,我意識到我的解釋完全與它所說的完全相反。 – user3158900