所有 api 操作的一条路线
One route for all the api operations
我正在研究 api,使用 Laravel 5.6,用于一个应用程序,在该应用程序中,我被要求为可以由发送的参数控制的所有操作提供一条路径。这样做,应该可以让前端开发人员的工作更轻松,他/她不必担心要调用的不同路由,因为一条路由就可以完成所有工作。
这样就会有一个控制器,在一个方法中包含所有相关功能。对各种表的不同操作应该根据给定的参数来区分,而不是其他。
所以我只是想知道继续使用这种方法是否可取,因为我从未研究过这种概念。
如前所述,所有这些都将在很大程度上取决于数据模型,这在您的问题中并不清楚。
所以主要问题是,api 会提供什么样的数据?
但在我不知道的情况下,提议的解决方案对我来说并不是一个好方法。
我的缺点是:
看来后端正在修复前端缺少结构。
通常不同的前端组件会依赖不同的 API 端点。混合使用将导致难以在所有方面维护代码。
前端应该担心他们调用什么。
我看不出前端的逻辑确实知道他们想发送哪些参数,但他们不想知道 寄到哪里?
- API 代码可维护性有利于前端吗?这对我来说毫无意义,这会回来困扰你。
您正在为 api 添加不必要的复杂性。
想想你将如何处理输入验证,以及你将如何 return 将其发送到前端。
物有所值;
我通常从一个简单的 REST api 开始,直接在数据库模型上允许简单的 CRUD 和列表以及简单的 filter/sort/paging 操作。
对于 Laravel,这意味着在您的实体之上使用 resource controllers,这将公开该实体的 CRUD 端点。
这将公开一个简单的界面,客户端可以在其中 fetch/create/update 单个实体。
最重要的是,如果需要,我将创建额外的 API 端点,如果特定的 frontend/usage 需要的话,并且除此之外将该功能移动到 api/backend.
是有意义的
我正在研究 api,使用 Laravel 5.6,用于一个应用程序,在该应用程序中,我被要求为可以由发送的参数控制的所有操作提供一条路径。这样做,应该可以让前端开发人员的工作更轻松,他/她不必担心要调用的不同路由,因为一条路由就可以完成所有工作。
这样就会有一个控制器,在一个方法中包含所有相关功能。对各种表的不同操作应该根据给定的参数来区分,而不是其他。
所以我只是想知道继续使用这种方法是否可取,因为我从未研究过这种概念。
如前所述,所有这些都将在很大程度上取决于数据模型,这在您的问题中并不清楚。
所以主要问题是,api 会提供什么样的数据?
但在我不知道的情况下,提议的解决方案对我来说并不是一个好方法。
我的缺点是:
看来后端正在修复前端缺少结构。
通常不同的前端组件会依赖不同的 API 端点。混合使用将导致难以在所有方面维护代码。
前端应该担心他们调用什么。
我看不出前端的逻辑确实知道他们想发送哪些参数,但他们不想知道 寄到哪里?
- API 代码可维护性有利于前端吗?这对我来说毫无意义,这会回来困扰你。
您正在为 api 添加不必要的复杂性。
想想你将如何处理输入验证,以及你将如何 return 将其发送到前端。
物有所值;
我通常从一个简单的 REST api 开始,直接在数据库模型上允许简单的 CRUD 和列表以及简单的 filter/sort/paging 操作。
对于 Laravel,这意味着在您的实体之上使用 resource controllers,这将公开该实体的 CRUD 端点。
这将公开一个简单的界面,客户端可以在其中 fetch/create/update 单个实体。
最重要的是,如果需要,我将创建额外的 API 端点,如果特定的 frontend/usage 需要的话,并且除此之外将该功能移动到 api/backend.
是有意义的