【问题标题】:how to create middleware in octobercms如何在octobercms中创建中间件
【发布时间】:2017-04-07 10:51:27
【问题描述】:

我是 OctoberCMS 的新手,但我对 Laravel 有一定的了解。

在 Laravel 中,很容易创建中间件并将多个中间件组合在一起。

在 OctoberCMS 中,我还找不到合适的指南或满意的答案。

有谁知道如何在 OctoberCMS 中创建中间件并将多个中间件分组?

【问题讨论】:

标签: php laravel authentication middleware octobercms


【解决方案1】:

在您的插件文件夹中,使用文件 Plugin.php 来设置您的中间件 您必须像这样在启动函数中声明:

  public function boot()
  {
    // Register middleware
     $this->app['Illuminate\Contracts\Http\Kernel']
          ->pushMiddleware('Experty\Experts\Middleware\ExpertsMiddleware');
  }

在 ExpertsMiddleware.php 中

<?php namespace Experty\Experts\Middleware;

use Closure;
use Illuminate\Foundation\Application;
use Illuminate\Contracts\Routing\Middleware;
use Illuminate\Http\Response;
use October\Rain\Exception\AjaxException;
use Symfony\Component\HttpKernel\Exception\HttpExceptionInterface;

class ExpertsMiddleware implements Middleware
{
/**
     * The Laravel Application
     *
     * @var Application
     */
    protected $app;

    /**
     * Create a new middleware instance.
     *
     * @param  Application $app
     * @return void
     */
    public function __construct(Application $app)
    {
        $this->app = $app;
    }
 /**
     * Handle an incoming request.
     *
     * @param  \Illuminate\Http\Request  $request
     * @param  \Closure  $next
     * @return mixed
     */

    public function handle($request, Closure $next)
    {
      //youre code
     }
}

【讨论】:

  • “Laravel 5.2 中已弃用 Illuminate\Contracts\Routing\Middleware 合约” stackoverflow.com/a/35487715/69537
  • 我收到一个错误:PHP 致命错误:未捕获的 ReflectionException:/Applications/MAMP/htdocs/israplanet.com/vendor/laravel/framework/src/Illuminate 中不存在类 path.storage /Container/Container.php:752
猜你喜欢
  • 2016-08-25
  • 2021-07-19
  • 1970-01-01
  • 1970-01-01
  • 2017-11-08
  • 1970-01-01
  • 2021-08-03
  • 2021-07-25
  • 2017-03-29
相关资源
最近更新 更多