initialize()中获取不到中间件传递过来的参数

来源:7-19 个人中心数据修改以及预留的作业

黎明前的悲伤

2020-03-19

中间件

public function handle($request,\Closure $next){
        //前置中间件
        $request->test= "老师你好";
        return $next($request);
        //后置中间件
    }

初始化方法

public function initialize()
    {
        echo "1";
        echo $this->request->test;
        parent::initialize();
    }

具体调用方法

public function test(){
        return $this->request->test;
    }

输出结果为:1老师你好
初始化中的echo执行了,但是初始化方法中的获取输出中间件test参数获取不到。但是下方的具体调用方法中可以调取到中间件的参数,说明初始化中获取不到中间件返回的参数,麻烦老师给讲解一下这是什么问题?非常感谢!

写回答

1回答

黎明前的悲伤

提问者

2020-03-19

说明一下,我是直接使用的控制器中间件来定义的,并不是在middleware.php文件里面定义的,就获取不到。使用middleware.php进行配置的话是可以获取到的。

0
0

全流程开发 TP6.0实战高并发电商服务系统

一课就能掌握TP6.0基础及运用,打造完整高并发的电商后端项目

1459 学习 · 1310 问题

查看课程