【发布时间】:2014-09-03 11:24:09
【问题描述】:
我们正在我们的 Rails 服务器中迁移到更新版本的 API,并希望启用 Deflater / gzip 压缩,但仅适用于新的 api-routes。
routes.rb 类似这样:
....
....
def add_api_routes
resources :foo, only: [:index, :show]
resources :bar, only: [:index, :show]
end
namespace :api, defaults: { format: 'json' }, constraints: { subdomain: /internal|^$/ }, path: '/' do
namespace :v2, module: nil do
add_api_routes
end
namespace :v1, module: nil do
add_api_routes
end
end
....
....
我们确实在 application.rb 中添加了以下行
...
config.middleware.use Rack::Deflater
...
但这对两个版本都启用了 gzip。
只能为一个版本的 api 启用它。 (例如 v2)?
谢谢。 任何帮助将不胜感激。
【问题讨论】:
-
初始化器似乎接受条件:github.com/rack/rack/blob/master/lib/rack/deflater.rb#L31 Dig it :)
标签: ruby-on-rails api routes