如何为现有的Laravel应用创建公共API系统

时间:2019-06-12 12:59:50

标签: laravel api

我正在寻找为使用Web应用程序的客户创建公共API访问的方法。

API应该允许客户远程下订单。

处理API身份验证的最佳方法是什么,关于如何更好地处理请求/返回响应,是否有任何通用规则(最佳实践)?

注意:当前的Web应用程序已经在使用API​​和JWT进行常规用户身份验证。

2 个答案:

答案 0 :(得分:1)

许多大型API都遵循“ OpenApi”标准,这有助于使任何开发人员都能轻松理解您的API。您可以严格遵循此原则,但是即使您不尝试实现一些基本的基础知识,人们也将能够快速使用您的API。

例如:以应有的方式使用GET,POST,PUT,DELETE。 听起来很简单,但是我见过很多实现,其中每个请求都使用GET。当然可以(如果您以这种方式构建它),但是可以更容易犯错误,并且您需要更多的终结点。

也: 用户明确的名称和端点结构。

api.website.com/tickets/ [ID例如12]

api.website.com/orders/ [ID例如354]

现在,如果作为开发人员,我想获取ID为76的特定发票...我现在可以猜出端点:api.website.com/invoices/76

如果要获取数据,请使用GET api.website.com/invoices/76

如果要更新发票,请使用PUT api.website.com/invoices/76

使用的来源

https://swagger.io/blog/api-design/api-design-best-practices/ https://swagger.io/resources/articles/best-practices-in-api-documentation/ https://blog.mwaysolutions.com/2014/06/05/10-best-practices-for-better-restful-api/

答案 1 :(得分:0)

我建议使用雄辩性资源查看laravel API:Click here。对于身份验证,我建议使用Laravel Passport,Passport还使用JWT令牌进行身份验证,并且只需10分钟即可完成设置。 只需在routes / api.php文件中定义您的api端点,使用雄辩的资源就可以了。 希望我的回答能帮助您。