[英]an added value of array of request disappears in Laravel Controller
[英]$request-merge() disappears in parent controller
我被困在一个奇怪的问题上......
我有一个简单的中间件。
$request->merge([
'user' => $jwt->toArray(),
'app_version' => $request->header('app-version')
]);
当我在$next($request);
它有用户 object 和 app_version。 一切顺利:见下图:
移动到 controller。当在路由中定义的 function 时,并进行dump($request);
它有用户 Object
InstallController 扩展了 controller.php 扩展了use Illuminate\Routing\Controller as BaseController;
在 controller.php 中,我们有一个结构 function。
出于某种原因,这里的$request
是空的并且丢失了 object。
为什么会这样? 为什么这在 InstallController 中可用但在父级中不可用?
结果如下。 在Laravel流明中,中间件完成请求后调用了controller个构造函数。 在 Laravel 中,构造函数在中间件之前被调用。
意味着在 Laravel 中的中间件中向请求添加参数不起作用。
感谢您为我指明正确的方向。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.