一、新增路由文件
二、配置
三、注册中间件
larvael框架路由核心依赖于服务提供者 app/Providers/RouteServiceProvider.php
因此,自定义路由也主要集中于RouteServiceProvider.php文件
一、新增路由文件
routes 目录下新增路由文件 chat.php
<?php
use Illuminate\Support\Facades\Route;
Route::get('/test',function (){
return "欢迎来到chat路由";
});
二、配置
打开 RouteServiceProvider.php文件
新增路由:
public function boot()
{
$this->configureRateLimiting();
$this->routes(function () {
Route::middleware('api')
->prefix('api')
->group(base_path('routes/api.php'));
Route::middleware('web')
->group(base_path('routes/web.php'));
Route::middleware('chat')
->group(base_path('routes/chat.php'));
});
}
三、注册中间件
打开 app/Http/Kernel.php
protected $middlewareGroups = [
'web' => [
\App\Http\Middleware\EncryptCookies::class,
\Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse::class,
\Illuminate\Session\Middleware\StartSession::class,
// \Illuminate\Session\Middleware\AuthenticateSession::class,
\Illuminate\View\Middleware\ShareErrorsFromSession::class,
\App\Http\Middleware\VerifyCsrfToken::class,
\Illuminate\Routing\Middleware\SubstituteBindings::class,
],
'api' => [
'throttle:60,1',
\Illuminate\Routing\Middleware\SubstituteBindings::class,
\Illuminate\Session\Middleware\StartSession::class,
],
//添加这句!!
'chat' => [ // \Laravel\Sanctum\Http\Middleware\EnsureFrontendRequestsAreStateful::class, 'throttle:api', \Illuminate\Routing\Middleware\SubstituteBindings::class, ],
];
第三步如果不执行,则路由会报错:
Illuminate\Contracts\Container\BindingResolutionException
Target class [admin] does not exist.