有些gem/库将受益于更好地控制它们注入中间件的位置。
特别是,如果异常处理中间件位于堆栈的顶部,那就更好了。
有没有办法做到这一点,或者只能通过编辑config.ru来实现?
发布于 2012-05-22 03:32:33
目前,除了手动对中间件堆栈进行排序之外,没有其他固有的方法可以做到这一点。我见过一种黑客方法,你可以通过修补Rack::Builder来为你提供一些推送/弹出功能。
发布于 2015-07-27 11:24:23
不确定这是否是你想要的:http://api.rubyonrails.org/classes/Rails/Configuration/MiddlewareStackProxy.html
可以执行以下操作:
config.middleware.insert_before Rack::Head, Magical::Unicorns
config.middleware.insert_after Rack::Head, Magical::Unicorns
config.middleware.swap ActionDispatch::Flash, Magical::Unicorns
config.middleware.delete ActionDispatch::Flash您只需定义您的Railtie并操纵中间件即可。
https://stackoverflow.com/questions/10567514
复制相似问题