php - Laravel API 最佳实践

标签 php api laravel

我正在使用 Laravel 5.1 构建 API。

我有 3 个部分访问权限:用户、管理员、 super 管理员。

我很好奇处理 Controller 的做法。现在我为每个部分制作了 3 个不同的 Controller 。但有时我需要在 Controller 内调用相同的函数。如Product:all()

我真的应该制作 3 个不同的 Controller 还是我只能使用 2 个 Controller 以获得最佳实践?

最佳答案

当返回的数据集对所有用户(即基本用户、管理员和 super 管理员)都相同时,我只会使用一个 Controller /一个路由 /api/v1/products

我猜每个管理员/ super 管理员也是一个用户。因此,您应该使用中间件保护您的 /api/v1/products 路由,该中间件只检查用户是否是经过身份验证的用户,因为这样他就可以访问数据。

如果有一些产品以外的数据只能由管理员/ super 管理员访问,您应该为此创建另一个中间件。永远不需要为完全相同的 API 创建两个或多个 Controller /路由。

关于php - Laravel API 最佳实践,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34325355/

相关文章:

php - 使用ajax更新股票价格

api - paypal 授权 unsupported_grant_type 授权类型在 axios 发布请求中为 NULL

php - 如何在 blade (laravel 5.3) 中设置变量?

api - 如何使用 reitit clojure 定义可选查询参数

javascript - 当内容明显正确时,如何修复 XMLHttpRequest.open() 返回代码 0?

laravel - Laravel 开发中的 SSL 证书

laravel - 所需的验证在 laravel darkaonline swagger UI 中不起作用

php - Google 为您的客户提供的图表?

php - 脚本不会登录

php - 如何从 PHP 中的链接中删除跟踪代码