2016-10-15 40 views
5

我真的很新的API發展,但我使用Laravel之前開發了許多網站。(和PHP)使用內置的laravel 5.3功能或dingo來創建API?

現在我要創造我可以任何一種喜歡的Android,iOS或客戶的響應第一API一個有角度的應用程序。

我在這種情況下做了很多研究,我怎樣才能通過laravel製作一個API。

我發現有一個名爲dingo/api的程序包可以簡化並提供創建靈活API的要求。

而在另一方面,在Laravel的最後一個版本(5.3)增加了新的功能,幫助像Passport創建的API。

但我很困惑,不知道哪個是最好的方法。

在這種情況下單獨使用Laravel是否足夠?或者我肯定需要丁諾?

回答

5

這真的取決於你想要達到什麼目標,如果你想要一個帶有分頁功能的版本化api休息以及所有API通常具有的功能,那麼對我來說最好的方法是使用dingo api,但是如果你想從已經創建的網站提供JSON數據,只需返回控制器操作中的實體,laravel本身就會將它們返回編碼爲json,這是您自己選擇的問題,現在,您始終可以使用像這樣的生成器:https://github.com/InfyOmLabs/laravel-generator生成整個腳手架,這也包括一個REST API和文檔。並且在安全層中,您可以使用帶有laravel護照的OAuth服務器,或者使用此包使用JWT Auth https://packagist.org/packages/tymon/jwt-auth,配置和用法非常簡單。我想說的是,這是一個選擇的問題。

+0

我想創建的API應該可以響應不同的客戶端,就像我說的。並希望擁有所有正常的API功能。此外,我想使用'laravel 5.3',但我不知道'dingo'是否支持該版本?我不知道laravel 5.3和dingo是否會在一起發生衝突? (因爲我聽說dingo不支持laravel 5.3) –

+0

好吧,它的1.0.0-beta6版本中的dingo已經支持laravel 5.3,你可以在https://packagist.org上知道這個信息並檢查包支持當前版本框架的組件,例如,如果你尋求流行的權利,你應該看到我提到的那個版本支持照明/路由5.3,即與laravel 5.3兼容,希望這可以幫助你在你的選擇,最好;) – bretanac93

+0

API生成器替代上述提到的:[Laravel-REST-API-generator](https://github.com/YanDatsyuk/Laravel-REST-API-generator), [laravel-api-generator -GJ](https://packagist.org/packages/gabrieljaime/laravel-api-generator-gj) –