ruby-on-rails – 在Ruby on Rails的上下文中引用的是什么是中间件?

前端之家收集整理的这篇文章主要介绍了ruby-on-rails – 在Ruby on Rails的上下文中引用的是什么是中间件?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
Ruby on Rails的上下文中,我常常听到“中间件”一词.究竟是什么?你能提供具体的例子吗?

解决方法

中间件与Rack相关,Rack是用于Web应用程序的标准Ruby API.由于Rails应用程序是Rack应用程序,因此它们都适用于两者.

机架中间件是应用程序服务器(Webrick,Thin,Unicorn,Passenger,…)和实际应用程序(如Rails应用程序)之间的一切.这是Web应用程序服务器和应用程序本身之间的pipeline.

对于机架应用程序的输入是包含所有HTTP请求详细信息(以及更多)的“环境”.输出是HTTP响应.中间件层就像可以修改输入,输出或两者的过滤器. Rails使用中间件到implement some of its features(查询缓存,cookie存储,http方法扩展),但可以添加自己的.

机架中间件是使用Rack的Web应用程序之间重用简单的Web相关行为的有效方式,无论底层框架如何.如果您的一部分应用程序添加功能,但不负责HTTP响应,则它将被视为Rack中间件.

您可以将其作为Rack middleware实现的一些示例包括

> HTTP缓存(服务器端和客户端)
>记录
>认证
>监控
> HTTP头过滤

参见this SO question.

猜你在找的Ruby相关文章