Laravel 6 - 第十一章 中间件
在Laravel中,中间件是一种处理HTTP请求的中间层,它可以拦截和处理进入应用的HTTP请求和响应。
以下是一个Laravel中间件的示例代码:
<?php
namespace App\Http\Middleware;
use Closure;
class CheckAge
{
/**
* 处理传入的请求。
*
* @param \Illuminate\Http\Request $request
* @param \Closure $next
* @return mixed
*/
public function handle($request, Closure $next)
{
if ($request->age <= 18) {
return redirect('home');
}
return $next($request);
}
}
在这个例子中,我们创建了一个名为CheckAge
的中间件,它检查传入请求的age
参数。如果age
小于或等于18岁,用户将被重定向到home
路由;否则,中间件将通过调用$next($request)
将请求传递给下一个中间件或路由。
要注册中间件,你可以在app/Http/Kernel.php
文件中的$routeMiddleware
数组中添加它。例如:
protected $routeMiddleware = [
// ...
'check.age' => \App\Http\Middleware\CheckAge::class,
];
然后,你可以在路由中使用它,如下所示:
Route::get('profile', function () {
// 只有年龄大于18岁的用户才能访问这个路由
})->middleware('check.age');
这就是Laravel中间件的基本使用方法。
评论已关闭