什么是laravel的中间件?

Aja*_*rat 4 php laravel

我试图了解中间件在Laravel中是如何工作的.这是我的课程,任何人都可以解释它是如何工作的.

<?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);
    }

}
Run Code Online (Sandbox Code Playgroud)

谢谢

May*_*eyz 6

Middleware提供便捷的机制来过滤HTTP进入您的应用程序的请求.例如,Laravel包括middleware验证应用程序用户的身份验证的a.如果用户未经过身份验证,middleware则会将用户重定向到登录屏幕.但是,如果用户通过身份验证,middleware则允许请求继续进入应用程序.

参考

编辑:正如@ n​​um8er所解释的那样

中间件是位于路由器和路由处理程序之间的功能(或逻辑).

在你的代码中:

public function handle($request, Closure $next)
{
    if ($request->age <= 200) {
        return redirect('home');
    }

    return $next($request);
}
Run Code Online (Sandbox Code Playgroud)

$request->age是一个在请求中提供的变量,可以在每个HTTP请求上检查,如果它的值<= 200然后用户重定向到主路由.