Php Laravel 5中中间件和服务提供商之间的区别?
服务提供者在引导过程中将服务添加到应用程序容器中,而中间件 中间件可以在请求/控制器执行/响应之间形成一条链 他们获得了请求/响应引用,因此可以自由修改请求/响应。您可以记录一些内容、修改响应、重定向等 它可以形成这样的链条:Php Laravel 5中中间件和服务提供商之间的区别?,php,laravel,laravel-5,Php,Laravel,Laravel 5,服务提供者在引导过程中将服务添加到应用程序容器中,而中间件 中间件可以在请求/控制器执行/响应之间形成一条链 他们获得了请求/响应引用,因此可以自由修改请求/响应。您可以记录一些内容、修改响应、重定向等 它可以形成这样的链条: ->请求->提供者->中间件1->中间件2->控制器方法->中间件3->响应 ->请求->提供者->中间件#1->重定向 服务提供商是完全不同的。当应用程序启动时,它会调用已注册的服务提供商。这些提供者可以将实例登记到IOC容器、控制台命令、视图作曲家等。 < P>正如名
服务提供商是完全不同的。当应用程序启动时,它会调用已注册的服务提供商。这些提供者可以将实例登记到IOC容器、控制台命令、视图作曲家等。 < P>正如名称所示,中间件通常处于请求和响应的中间(示例自定义验证)。请记住,它们被称为always if defined,意思是如果你需要做一些事情,它们总是非常方便的
服务提供商也会做类似的事情,但不依赖于请求/响应,而是依赖于应用程序引导时间,即初始化过程。将中间件视为请求过滤器。服务提供商是。。。好的,就是提供服务的东西(笼统地说是工厂,尽管这过于简单化了)。每个角色的角色有很大的不同。所以中间件在提供者之后,有道理为什么用依赖于中间件数据的变量定义视图生成器不起作用。谢谢@Tacsiazuma