如何在octobercms中创建中间件
Posted
技术标签:
【中文标题】如何在octobercms中创建中间件【英文标题】:how to create middleware in octobercms 【发布时间】:2017-04-07 10:51:27 【问题描述】:我是 OctoberCMS 的新手,但我对 Laravel 有一定的了解。
在 Laravel 中,很容易创建中间件并将多个中间件组合在一起。
在 OctoberCMS 中,我还找不到合适的指南或满意的答案。
有谁知道如何在 OctoberCMS 中创建中间件并将多个中间件分组?
【问题讨论】:
这里是链接可能对你有帮助octobercms.com/forum/post/how-to-enable-cors @DCoder 找不到太多用处,但感谢您抽出宝贵时间 :) 【参考方案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 合约” ***.com/a/35487715/69537 我收到一个错误:PHP 致命错误:未捕获的 ReflectionException:/Applications/MAMP/htdocs/israplanet.com/vendor/laravel/framework/src/Illuminate 中不存在类 path.storage /Container/Container.php:752以上是关于如何在octobercms中创建中间件的主要内容,如果未能解决你的问题,请参考以下文章
在 laravel 8 中创建 auth guard 使用中间件
在 Laravel 5.1 中创建 superAdmin 中间件