Отличный ответ на xhr запрос на localhost и heroku - PullRequest
0 голосов
/ 02 февраля 2019

Это код контроллера rails:

    respond_to do |format|
      if @article.save
        if request.xhr?
          format.js { render json: @article.id }
        else
          format.html { redirect_to @article, notice: 'Article was successfully created.' }
          format.json { render :show, status: :created, location: @article }
        end
      [...]
    end

Это запрос XMLHttpRequest:

var xhr = new XMLHttpRequest();
xhr.open('POST', "/articles/")
xhr.withCredentials = true;
var formData = new FormData();
formData.append('utf8', true);
formData.append('article[link]', "foo");
formData.append('article[title]', "bar");
formData.append('commit', "Create+Article");
xhr.setRequestHeader("X-requested-with", "XMLHttpRequest")
xhr.onreadystatechange = function() {
  if (xhr.readyState == XMLHttpRequest.DONE) {
    console.log(xhr.response);
  }
}
xhr.send(formData);

Ответ, когда я запускаю запрос на локальном хосте и сохраняет его, является идентификаторомстатья, как и должно быть, но ответом на heroku является ошибка «Шаблон отсутствует».

Я пытался добавить head :ok и format.html { redirect_to @article, notice: 'Article was successfully created.' } в request.xhr?, но это не имело значения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...