返回基于OAuth令牌作用域的模型属性



我如何根据请求用于授权的访问令牌中的作用域返回laravel模型,类似于discord在这里对其身份和电子邮件作用域的处理方式。我想在基于令牌范围的模型中基本上"动态"隐藏/显示特定属性

这会是在控制器或模型中定义的东西吗?

决定使用Laravel API资源和条件属性

class UserResource extends JsonResource
{
/**
* Transform the resource into an array.
*
* @param  IlluminateHttpRequest  $request
* @return array
*/
public function toArray($request)
{
return [
'id' => $this->id,
'username' => $this->username,
'email' => $this->when($request->user()->tokenCan('email'), $this->email),
];
}
}

最新更新