如何使用App :: before()Laravel 5.0

时间:2018-05-24 23:29:26

标签: laravel laravel-5 middleware

我从Laravel 4.2迁移到5.0,并阅读其他问题,我在我的 app \ http \ middleware 上创建了一个新的中间件但是,我没有&#39 ;知道如何将此实现到我的 RouteServiceProvider.php

这是我的 BeforeMiddleware

<?php namespace App\Http\Middleware;

use Closure;

class BeforeMiddleware {

 /**
  * Handle an incoming request.
  *
  * @param  \Illuminate\Http\Request  $request
  * @param  \Closure  $next
  * @return mixed
  */
 public function handle($request, Closure $next)
 {
    return $next($request);
 }

}

在我的 RouteServiceProvider 上我得到了这个

App::before(function($request)
{
    //I think here need to be my code...    
});

2 个答案:

答案 0 :(得分:1)

您需要在app/Http/Kernel.php文件中注册中间件。

在这里您可以找到3个选项:

protected $middleware = [..] <-- run on EVERY request

protected $middlewareGroups = ['web'=>...] <-- run on all web routes

protected $routeMiddleware = ['auth'...] <-- run on routes when defined

答案 1 :(得分:0)

我不得不在前一段时间处理CRM的相同情况,理想的方法是将 Laravel 4.2 App::before()内的内容迁移到< strong> Laravel 5.0 。

首先,您可以使用boot()中的AppServiceProvider方法,以便您可以测试水域。

从那里,您可以选择拥有一个专门的服务提供商来保留此部分,例如 AppBeforeServiceProvider

您已提及迁移到中间件,但实际上来自 Laravel 4.2

filters