Задать вопрос

Ember.js: как правильно отправить crossdomain запрос через RESTAdapter?

Есть RESTAdapter и контроллер, который обращается к адаптеру:
export default Ember.Controller.extend({
  actions: {
    auth() {
      var a = this.store.adapterFor('auth');
      var hash = this.getProperties('login', 'password');
      a.ajax('https://192.168.18.134/rest/auth', 'GET', hash);
    }
  }
});

В адаптере я добавил параметры, чтоб crossdomain-запросы работали:
export default RESTAdapter.extend({
  corsWithCredentials: true,
  headers: {
    'Access-Control-Allow-Origin': '*'
  }
});


По submit-у формы выполняется auth(), в файрбаге отображается GET-запрос, а следом появляется предупреждение:
Запрос из постороннего источника заблокирован: Политика одного источника запрещает чтение удаленного ресурса на https://192.168.18.134/rest/auth (Причина: отсутствует токен 'access-control-allow-origin' в заголовке CORS 'Access-Control-Allow-Headers' из канала CORS preflight).

и ошибка:
Error: Ember Data Request GET https://192.168.18.134/rest/auth returned a 0
Payload (Empty Content-Type)

и я не знаю - то ли параметры не помогли, то ли какая другая причина.

Вместо функции .ajax пробовал использовать .query, но результат такой же.
  • Вопрос задан
  • 414 просмотров
Подписаться 2 Оценить Комментировать
Решения вопроса 1
@aristov Автор вопроса
Странно, но мешал заголовок, который я подсмотрел в интернетах:
'Access-Control-Allow-Origin': '*'
убрал его и проблемы ушли.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы