Для чего нужен файл .json в приложении rails? - PullRequest
0 голосов
/ 23 января 2019

Для чего конкретно файл .json используется в профессиональном приложении rails?

Я создал каркас для моего блога и разбираюсь в действиях CRUD с DB postgresql, однако мне просто интересно узнать о format.json строках кода, которые также создаются в каркасе.

def create
  @blog = Blog.new(blog_params)

  respond_to do |format|
    if @blog.save
      format.html { redirect_to @blog, notice: 'Blog was successfully created.' }
      format.json { render :show, status: :created, location: @blog }
    else
      format.html { render :new }
      format.json { render json: @blog.errors, status: :unprocessable_entity }
    end
  end
 end

1 Ответ

0 голосов
/ 23 января 2019

JSON является широко используемым форматом для API и обычно используется в Rails API.

Когда вы делаете format.json в контроллерах, вы действительно говорите: «Этот маршрут / конечная точка может реагировать наJSON-запросы ", а не только html-запросы.

Когда веб-сайт просматривается в браузере, он автоматически отправляет заголовок HTTP с именем Accept.Например:

Accept: <MIME_type>/<MIME_subtype>
Accept: <MIME_type>/*
Accept: */*

Это может быть любое количество типов MIME;Включая Accept: application/json, который сообщит Rails, что он может отвечать JSON.

Что делает браузер, так это отправляет Accept: text/html, что воспринимается как «Привет, я хочу HTML-версию этого», таким образом рендеринг format.html -блока.

См. Также:

...