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