中间件

1.首先定义两个路由

Route::get('/{name}','Conterller@index');

Route::get('/routes','Conterller@routes');

2.创建中间件
php artisan make:middleware checkName

创建中间件目录如下:

3.找到checkName文件

<?php

namespace App\Http\Middleware;

use Closure;
use Illuminate\Support\Facades\Redirect;

class checkName
{
    /**
     * Handle an incoming request.
     *
     * @param  \Illuminate\Http\Request  $request
     * @param  \Closure  $next
     * @return mixed
     */
    public function handle($request, Closure $next)
    {
        if($request->name=='123'){
            return Redirect::to('/routes');
        }
        return $next($request);
    }
}

4.测试中间件

localhost/laravel/public/index.php/123

当中间件检查到参数是123时,则直接跳转routes控制器中。

注意:由于初学laravel框架,发现控制器方法必须在路由中定义过的使用redirect方法,跳转时才不报404错误。

posted @ 2020-06-26 12:02  辉辉、  阅读(198)  评论(0编辑  收藏  举报