在卢门注册外墙和服务提供商的地方

Eme*_*bah 29 laravel lumen

我正在寻找在Lumen下面添加立面的地方.

'JWTAuth' => 'Tymon\JWTAuth\Facades\JWTAuth'
Run Code Online (Sandbox Code Playgroud)

EDITED

也在哪里注册服务提供商 bootstrap\app.php

$app->register('Tymon\JWTAuth\Providers\JWTAuthServiceProvider');
Run Code Online (Sandbox Code Playgroud)

请协助.

kri*_*lfa 57

在你的bootstrap/app.php,请确保你没有评论:

$app->withFacades();
Run Code Online (Sandbox Code Playgroud)

然后,注册您的类别名并检查它是否已经存在(否则您的测试将中断):

if (!class_exists('JWTAuth')) {
    class_alias('Tymon\JWTAuth\Facades\JWTAuth', 'JWTAuth');
}
Run Code Online (Sandbox Code Playgroud)

要注册您的ServiceProvider,请检查您的bootstrap/app.php:

/*
|--------------------------------------------------------------------------
| Register Service Providers
|--------------------------------------------------------------------------
|
| Here we will register all of the application's service providers which
| are used to bind services into the container. Service providers are
| totally optional, so you are not required to uncomment this line.
|
*/

// $app->register('App\Providers\AppServiceProvider');

// Add your service provider here
$app->register('Tymon\JWTAuth\Providers\JWTAuthServiceProvider');
Run Code Online (Sandbox Code Playgroud)

更新#1

我在这里制作了一个simpel样板,将Lumen与JWT和Dingo整合在一起.

  • 因为`class_alias`破坏了我的PHPUnit测试,所以我最终在这里结束了.使用`class_exists`防止多次执行`class_alias`. (6认同)

qwa*_*waz 11

要使用别名注册外观,请转到bootstrap/app.php并取消注释bootstrap/app.php- 这会告诉框架加载默认外观.为了加载其他外观,只需将它们添加到数组并将数组作为第二个参数传递,同时将第一个参数设置为true,如下所示:

$app->withFacades();
Run Code Online (Sandbox Code Playgroud)

要注册服务提供商,请在同一文件中向下滚动到相关注释部分并添加以下行:

$app->withFacades(true, ['Tymon\JWTAuth\Facades\JWTAuth' => 'JWTAuth']);
Run Code Online (Sandbox Code Playgroud)