Laravel middleware中间件

创建  php artisan make:middleware TestMiddleware

自动生成了 app/Http/Middleware/TestMiddleware.php 文件

public function handle($request, Closure $next)
{
    //编写具体业务
    if($request->get("id")==2){
        echo "hehe" ;
    }else{
        echo "cccc";
    }
    //请求转发给下一步
    return $next($request);
}


  
注册中间件,注册的方式有三种:

1.全局注册
在 app/Http/Kernel.php 中的 $middleware 进行注册:

protected $middleware = [
    # ...
    \App\Http\Middleware\TestMiddleware::class,
];


2.路由注册
首先在 app/Http/Kernel.php 的 $routeMiddleware 中注册自定义的路由

protected $routeMiddleware = [
    # ...
    'test_middleware' => \App\Http\Middleware\TestMiddleware::class,
];


然后在 routes/web.php 中将中间件绑定到指定的路由

Route::get('test', 'TestController@index')->name('test')->middleware('test_middleware')

3.路由分组注册

Route::group(['middleware' => ['test_middleware']], function () {
    Route::get('test', 'TestController@index')->name('test');
});

修改 app/Http/Controllers/TestController.php 代码:

class TestController extends Controller
{
    public function __construct()
    {
        // 排除某些方法
//        return $this->middleware(['test_middleware'])->except('index');
        return $this->middleware(['test_middleware']);
    }

    public function index()
    {
        echo "test";
    }
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值