Как получить ajax обещание только главой ответной реакции? - PullRequest
0 голосов
/ 20 апреля 2019

Проще говоря: Мне нужно обработать ответ от rails API, чтобы что-то сделать, но мне нужен только заголовок ответа, без каких-либо данных.

Но then не получает ответ, если он содержит только заголовок.

Подробнее:

Рельсы Действие контроллера:

def index
  # some logic here ...
  head :created
end

Действие компонента ember:

let adapter = getOwner(this).lookup('adapter:application');
adapter.ajax(
  adapter.buildURL('/index'), 'POST', { some_param: 'some_content' }
).then(() => { 'do something here...' });

Так что в этой реализации { 'do something here...' } никогда не используется. Но он работает успешно, если сменить контроллер-действие:

def index
  render json: [], status: :created
end

но мне не нужно рендерить часть json в ответ.

Итак, вопрос:

как можно запустить код 'do something here...' для действия контроллера:

def index
  head :created
end

Любая помощь приветствуется.

1 Ответ

0 голосов
/ 21 апреля 2019

зачем вообще маршрутизировать через адаптер? в общем случае вы должны использовать адаптер только для ember-data запросов.

Просто используйте fetch (используйте ember-fetch, если вам нужен полифилл)!

const res = await fetch('/index', {
  method: 'POST',
  body: JSON.stringify({ some_param: 'some_content' }),
});

console.log(res.headers.get('your-header'));
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...