До сих пор я нашел два способа для request.format.json? быть истинным в Rails (т.е. когда входящий запрос обрабатывается как JSON). Один из них заключается в том, что если вы запрашиваете ресурс и заканчиваете на .json, то другой - если вы указываете заголовок Accept: application/json в своем запросе. Каждая работа автономна.
Я хочу зарегистрировать свой собственный тип "accepts" для этого второго случая:
Accept: application/vnd.myapp_v1+json, и это обработано рельсами как "запрос json", например application/json, без необходимости добавления .json.
Моя первая мысль заключалась в регистрации моего MimeType как :json (в моем инициализационном коде), но это фактически нарушит поддержку приложения /json, а не то, что я хочу сделать.
Mime::Type.register "application/vnd.myapp_v1+json", :json # my failed attempt