RESTFul 风格的 API 表现为操作资源, 如果返回的资源受到业务端口的不同或者权限的不同需要返回不同的内容该如何设计呢?
目前只想到以下几种
诸位还有什么更好的思路么......
![]() | 1 join 2021-06-01 21:39:08 +08:00 不能这么设计,权限和接口应该分开。在认证时确立好权限,然后实现接口时返回不同的数据。 |
![]() | 2 risky OP @join 没太理解 "权限和接口应该分开" 是什么意思, 目前想的认证方式是 jwt 首次登录的时候, 权限字段封装在 jwt 里请求接口的时候判断权限, 纠结的点是应该是通过一个接口不同权限返回不同数据, 还是多个接口, 不同权限调用不同的接口...... |
![]() | 3 no1xsyzy 2021-06-01 22:05:54 +08:00 权限应当只决定一件事:这个接口是否允许被调用。 我怀疑你的资源粒度还不够细。 |
![]() | 4 join 2021-06-01 22:26:05 +08:00 @risky 你要是这么设计会被锤的。 接口尽量简洁,朴实无华且枯燥。你见过谁的 restful 是这样设计的?设计 restful 的第一原则就是别搞创新。 |
![]() | 5 IvanLi127 2021-06-01 23:10:12 +08:00 via Android 判断权限复杂的话 你分接口就不复杂了吗(;` O)o 应该有优化空间吧 |
6 Jooooooooo 2021-06-01 23:13:25 +08:00 api 接口设计第一原则, 命名尽量清晰, 不查文档就知道是干嘛的 剩下的随意, 比如全是 post 接口也没事, 不靠这个 |
![]() | 7 xuanbg 2021-06-02 10:34:17 +08:00 @Jooooooooo restful 原教旨主义者即将到达…… |