protected function sendRequestThroughRouter($request){ $this->app->instance('request', $request); //在app中注册request实例 Facade::clearResolvedInstance('request'); //清除门面对象里已经注册的request实例 $this->bootstrap(); 初始化启动,包括config里的全部文件 return (new Pipeline($this->app)) //实例化一个Pipeline对象,先将application须要启动的对象自愿传递进去 ->send($request) //request传递到pipeline对象中的passable变量中。 ->through($this->app->shouldSkipMiddleware() ? [] : $this->middleware) //执行部分中间件,好比权限之类的 ->then($this->dispatchToRouter()); 执行路由中间件}