我试图了解中间件在 Laravel 中是如何工作的。这是我的类(class),谁能解释一下它是如何工作的。?
<?php
namespace App\Http\Middleware;
use Closure;
class CheckAge
{
/**
* Handle an incoming request.
*
* @param \Illuminate\Http\Request $request
* @param \Closure $next
* @return mixed
*/
public function handle($request, Closure $next)
{
if ($request->age <= 200) {
return redirect('home');
}
return $next($request);
}
}
谢谢
最佳答案
Middleware
提供了一种方便的机制来过滤进入应用程序的 HTTP
请求。例如,Laravel
包含一个 middleware
,用于验证您的应用程序的用户是否已通过身份验证。如果用户未通过身份验证,middleware
会将用户重定向到登录屏幕。但是,如果用户通过身份验证,middleware
将允许请求进一步进入应用程序。
Reference
编辑:正如@num8er 所解释的
中间件是位于路由器和路由处理程序之间的功能(或逻辑)。
在您的代码中:
public function handle($request, Closure $next)
{
if ($request->age <= 200) {
return redirect('home');
}
return $next($request);
}
$request->age
是一个在请求中提供的变量,可以在每个 HTTP 请求上检查,如果它的值 <= 200
则用户重定向到家庭路由。关于php - Laravel 中的中间件是什么?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/43013296/