Laravel 授权与请求响应机制详解
1. 定义授权规则
授权规则通常在 AuthServiceProvider 的 boot() 方法中定义,该方法会注入一个 Illuminate\Contracts\Auth\Access\Gate 实例(别名为 GateContract )。授权规则也被称为能力,由字符串键(如 update - contact )和返回布尔值的闭包组成。以下是更新联系人能力的示例:
class AuthServiceProvider extends ServiceProvider
{
public function boot(GateContract $gate)
{
$this->registerPolicies($gate);
$gate->define('update - contact', function ($user, $contact) {
return $user->id === $contact->user_id;
});
}
}
定义能力的步骤如下:
1. 定义键 :键名应在代码流程中有意义,常见的命名约定是 {verb}-{modelName} ,如 create - contact 、
超级会员免费看
订阅专栏 解锁全文
37

被折叠的 条评论
为什么被折叠?



