RESTfulインターフェイスを持つRailsアプリケーションは、 'application/json'に基づいてカスタムMIMEタイプを使用してPOSTデータを受け入れる必要があります。 MIMEタイプ 'application/vnd.com.example.Foo + json'を呼び出してみましょう。カスタムMIMEタイプ使用時にRailsでJSONペイロードを解析する
Mime :: Type.registerを使用してカスタムMIMEタイプを登録すると、「Accept:」ヘッダーに指定されているMIMEタイプが認識され、respond_toを介してJSONビューがレンダリングされます。
問題は、カスタムJSON形式のデータをparamsハッシュに変換する必要がある、コントローラのメソッド(updateやcreateなど)です。 "Content Type:"ヘッダーをapplication/jsonに設定すると、データはparamsハッシュに解析されます。
しかし、「コンテンツタイプ:」ヘッダーを「applcation/vnd.com.example.Foo + json」に設定した場合、ペイロードは解析されません。
MIME :: Type.registerはrespond_toブロックの駆動に使用されますが、作成および更新メソッドのペイロードの解析方法の決定には使用されていないようです。
アイデア?
はルックス: 'ActionDispatch :: Request.parameter_parsers [マイム: :Type.lookup( 'application/vnd.com.example.foo + json')] =ラムダ{| raw_post | ActiveSupport :: JSON.decode(raw_post)} ' –