在 Laravel 中,創建中間件的過程非常簡單。請按照以下步驟操作:
打開命令行或終端。
導航到您的 Laravel 項目根目錄。
使用以下命令創建一個新的中間件類:
php artisan make:middleware YourMiddlewareName
將 YourMiddlewareName
替換為您想要的中間件名稱。例如,如果您想要創建一個名為 AuthMiddleware
的中間件,您可以運行:
php artisan make:middleware AuthMiddleware
這將在 app/Http/Middleware
目錄下生成一個新的中間件類文件。
handle
的方法,該方法接收兩個參數:$request
和 $next
。在這個方法中,您可以編寫您的中間件邏輯。例如,以下是一個簡單的身份驗證中間件示例:
<?php
namespace App\Http\Middleware;
use Closure;
use Illuminate\Http\Request;
class AuthMiddleware
{
public function handle(Request $request, Closure $next)
{
if (!$request->user()) {
return redirect('/login');
}
return $next($request);
}
}
app/Http/Kernel.php
文件中注冊您的中間件。找到 $routeMiddleware
屬性,并將您的中間件添加到數組中。例如:protected $routeMiddleware = [
// ...
'auth' => \App\Http\Middleware\AuthMiddleware::class,
];
現在,您可以在路由定義中使用 auth
中間件了。例如,在 routes/web.php
文件中:
Route::get('/dashboard', 'DashboardController@index')->middleware('auth');
這將確保只有經過身份驗證的用戶才能訪問 /dashboard
路由。