我正在尝试找到一种基于用户授权修改网页的方法。例如,资源的所有者应该看到edit
和delete
按钮,而普通用户不应该看到这些。
以下是我正在考虑的一种方法,但不确定是否有更常见/更好的方法。
例如,假设有一个资源
project: {
name: string,
owner_id: id,
moderators: [ids],
other_stuff: string
}
使用描述当前登录用户的角色的属性扩展此对象是否是 RESTful 和良好的做法?例如,假设该用户是版主之一,它会发送
project: {
name: string,
owner_id: id,
moderators: [ids],
other_stuff: string,
user_role: "moderator"
}
然后客户端框架将用于project.user_role
显示基于角色的控件,例如delete
和edit
。