谢谢
![]() | 1 opengps 2020-02-08 10:20:31 +08:00 via Android 从功能上来说可以一个接口,但是从全照上来说尽量拆分成 2 个,来避免越权查看 |
![]() | 2 yianbin 2020-02-08 10:28:56 +08:00 分开为佳 |
![]() | 3 keepeye 2020-02-08 10:33:21 +08:00 看我的数据是公开的还是私密的 |
![]() | 4 sazima OP |
6 xulolololololo 2020-02-08 10:44:35 +08:00 ![]() /api/v1/data/ 参数 user_id , 用登录态控制权限 |
9 buffzty 2020-02-08 11:07:07 +08:00 我是用一个接口. 接口用参数筛选.还有一个 scene 参数,默认 scene 是 default 查看自己的数据,如果 scene 是 admin 就要求管理员权限. |
![]() | 10 ytmsdy 2020-02-08 11:12:57 +08:00 via iPhone 分开! |
![]() | 11 AngryPanda 2020-02-08 14:50:41 +08:00 可以分开写,但是支持同时请求。 |
![]() | 12 xiaoFine 2020-02-08 15:36:02 +08:00 我是分开的 userid 从 token 里拿 |
13 kof21411 2020-02-08 15:36:20 +08:00 可以开分也可以共用一个接口用参数区分 |
![]() | 14 timothyqiu 2020-02-08 17:23:39 +08:00 ![]() 所有的 /users 单人的 /users/:user_id 自己的 /user |
15 yianbin 2020-02-08 18:21:13 +08:00 @timothyqiu 正解 |
![]() | 16 wangchonglie 2020-02-08 21:17:12 +08:00 @timothyqiu #14 请问为什么自己的就不用单人的那种方式呢? |
17 buffzty 2020-02-08 22:21:35 +08:00 初学时用 1,现在为了追求速度用 2. postData 里面加上筛选条件,排序条件,场景 这样子做,所有的模型都写用通用接口,后端只需要为模型写几十行代码配置一下就完事.控制器都不需要写. 马上准备一个接口再聚合一下 /curd,只需要在现有的 queryExtra 中再加个 model 名就行 ```typescript type OrderKeys = 'id' | 'ctime' type Scene = 'admin' | 'default' interface QueryExtra extends BaseExtra<Scene> {} type ActGetListParam = GetListParam<FilterKeys, OrderKeys, QueryExtra> type AddData = Omit<Model, 'adeptLabelList' | 'department' | 'id'> type EditData = AddData & Pick<Model, 'id'> export async function lists<T = Model>(data: ActGetListParam) { return bpost<{ list: T[] }>({ url: route + '/list', data, }) } export async function detail<T = Model>(data: { id: number; scene?: Scene }) { return bpost<{ detail: T }>({ url: route + '/detail', data, }) } ``` |
![]() | 18 timothyqiu 2020-02-09 13:14:50 +08:00 ![]() @wangchonglie 不必让单人接口特殊处理用户是自己的情况(比如权限管理);客户端也不必额外保存本用户 ID,有 Token 就行; URL 下可以扩展一些只对用户自己有意义的接口。 |
19 xingfa 2020-02-09 16:17:42 +08:00 路由分开吧 /api/ /admin/ |
![]() | 20 wangchonglie 2020-02-09 16:45:46 +08:00 @timothyqiu #18 请问这样做的目的主要是为了减少业务处理时候的逻辑判断吗? 但这样是不是就把任务给了前端呢? |
![]() | 21 timothyqiu 2020-02-09 21:19:55 +08:00 |