が、これは動作します:Rails 4.2では、メディアタイプパラメータを使用してレスポンスコンテンツタイプヘッダを設定する方法はありますか?以前のバージョンで
ActionController::Renderers.add(:foo) do | data, options |
self.content_type = 'application/foo; bar=1'
end
は4.2.4で、これは空白にするContent-Typeヘッダの原因となります。ただし、以下の作品、すなわち、CONTENT_TYPEに割り当てられた文字列にContent-Typeヘッダを設定します。
ActionController::Renderers.add(:foo) do | data, options |
self.content_type = 'application/foo'
end
私が知っている他のアプローチを、レンダリングにCONTENT_TYPEを設定する、すなわち、もはや何の結果を持っていないようです、 (アプリケーション/ fooのをしようと気にしない;バー= 1)render('foo', content_type: 'application/foo')
は、ヘッダーを設定しない
ここにいるのは正しいと思います。私が走っているように見えるもののほとんどは、現在のRailsとRspecにおけるメディアタイプのパラメータの扱いが奇妙な挙動を引き起こしている赤い文字列です。たとえば、RailsのParamsParserの選択_seems_は、ルート選択中にメディアタイプのパラメータを認識しないため、コントローラは選択されていますが、paramsは空になり、コードパスは予期しないターンになります。多分。私が本当に言うことができるのは、少なくともPregoの瓶がなければ、結果は予測できないということです。 –
上記のコメントの問題を複合するために、登録されたカスタムMIMEタイプは、render(file.mime.foo)が使用されているときに明示的に設定されたコンテンツタイプをオーバーライドするようです。 –