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
We move iPhone requests over to HTML in our app with a before_filter like so:
before_filter :determine_format
def determine_format
request.format = :iphone if (request.env["HTTP_USER_AGENT"] =~ /iPhone/ && request.format == :html)
end
I imagine you can do something similar with your specific format, maybe like this:
def determine_format
request.format = :json if (request.format == 'application/vnd.myapp_v1+json')
end
An alternative to this is:
api_mime_types = %W(
application/vnd.api+json
text/x-json
application/json
)
Mime::Type.unregister :json
Mime::Type.register 'application/json', :json, api_mime_types
In initializers/mime_types.rb
.