So far I’ve found two ways for request.format.json? to be true in Rails (i.e. where the incoming request is treated as JSON). One is if you request a resource and ending in .json the other is if you supply the header Accept: application/json in your request. Each work stand-alone.
I want to register my own “accepts” type for this second case:
Accept: application/vnd.myapp_v1+json and have this treated by rails as a “json request” like application/json, without the need to append .json.
My first thought was to register my own MimeType as :json (within my initialisation code), but this will actually break support for application/json, not what I want to do.
Mime::Type.register "application/vnd.myapp_v1+json", :json # my failed attempt
We move iPhone requests over to HTML in our app with a before_filter like so:
I imagine you can do something similar with your specific format, maybe like this: