2017-10-05 43 views
0

我正在用Vue.js和Laravel构建一个REST API应用程序。由于我是API新手,因此我的问题只是一个基本的最佳实践。基本上我有两个角色:主管和经理。每个用户都有一个或另一个,数据结构完全相同,但基本上,经理只需获取他们的帐户和帐户信息,而主管将获得所有经理帐户和信息。基于路由或php查询的Api数据

在这种情况下是它更好地有:

A.)像/api/supervisor/accounts一个单独的API,将返回所有帐户。我在我的AJAX使用API​​将基于角色:

if(this.$store.state.role == 'supervisor'){ 
    var url = /api/supervisor/accounts 
} else { 
    var url = /api/accounts 
} 

B.)只要按下一个途径/api/accounts并在php方法返回基于用户角色的出现在JSON账户。

回答

1

我会建议使用相同的api,根据用户权限在api后面处理差异。

在前端(vue)一侧,这将使它更容易,因为您不必处理不同的端点。

+0

这有额外的好处,确保用户获得基于后端的有效数据。那么你就没有一个不是主管的人只是碰到主管的路线,随便做任何他们想做的事情。 –