我真的很绝望。 我将一个laravel项目从5.2迁移到5.5,这一切都完美无缺。但是我在控制器构造函数中使用Request对象时遇到了问题。如果我使用Request对象,控制器似乎会跳过中间件。 我试图使用$ this->中间件(' api');但没有工作。
public function __construct(Request $req) {
$this->commerce = new Commerce($req->user->currency()->currency);
}
我的' api'中间件在请求中推送用户对象。 在构造方法中,$ req-> user为null!
api路由设置正确,其他控制器正常工作!
我忘记了什么?
答案 0 :(得分:0)
您可以在$this->middleware()
方法的回调函数中使用控制器中的Request对象。试试这个:
public function __construct(){
$this->middleware(function($req, $next){
$this->commerce = new Commerce($req->user->currency()->currency);
return $next($request);
});
}