Laravel authorizeResource“此操作未经授权。”

时间:2019-06-04 18:43:42

标签: php laravel rest

我在名称空间App/BaseData中有一个名为BusinessClient的模型。对于此模型,我已经使用命令php artisan make:policy BaseData/BusinessClientPolicy --model=BusinessClient创建了一个Policy,并将其注册在AuthServiceProvider.php文件中。

protected $policies = [
    // Base Data
    BusinessClient::class => BusinessClientPolicy::class,
];

此政策中的view方法看起来像这样

public function view(User $user, BusinessClient $businessClient)
{
    return true;
}

要授权我的资源,我在apiResource Controller的构造函数中调用了authorizeResource方法。

public function __construct(Request $request)
{
    $this->middleware('auth:api');
    $this->middleware('verified');
    $this->authorizeResource(BusinessClient::class, 'business_client');
}

我的问题是,当我尝试从控制器调用401 Forbidden方法时,我总是得到show响应。我的代码出了什么问题?

0 个答案:

没有答案