gpt4 book ai didi

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

转载 作者:数据小太阳 更新时间:2023-10-29 06:30:42 24 4
gpt4 key购买 nike

我经常在 Ruby on Rails 的上下文中听到“中间件”一词。它到底是什么?能否举出具体例子?

最佳答案

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

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

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

Rack 中间件是一种在使用 Rack 的 Web 应用程序中重用简单的 Web 相关行为的有效方法,而不管底层框架如何。如果您的应用程序的一部分添加功能,但不负责 HTTP 响应,则它有资格作为 Rack 中间件。

一些您可以实现为 Rack middleware 的示例包括:

  • HTTP 缓存(服务器端和客户端)
  • 记录
  • 身份验证
  • 监控
  • HTTP header 过滤

另见 this SO question .

关于ruby-on-rails - 在 Ruby on Rails 上下文中引用什么是中间件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3217088/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com