Laravel 5.5 范围定义

Laravel 5.5 scopes definition

我正在尝试进行范围配置。范围构建在以下架构中:

module:submodule:action

此外,我在启动部分定义了

Passport::tokensCan($scopes);

但是,当我尝试使用带有 Passport 的 oauth2 生成令牌时出现以下错误:

The requested scope is invalid, unknown, or malformed

问题是方法 tokens 可以接收一个数组,键必须是稍后使用中间件作用域或作用域进行评估的作用域。

use Laravel\Passport\Passport;
Passport::tokensCan([
    'place-orders' => 'Place orders',
    'check-status' => 'Check order status',
]);

一个好的提示是app\Providers\AuthServiceProvider 在方法boot中添加如下代码:

    public function boot()
    {
        // ...

        Passport::routes();
        Passport::tokensCan([
            'place-orders' => 'Place orders',
            'check-status' => 'Check order status',
        ]);
    }

这对我有用。 (: