Ember-simple-auth и ember-fetch нет авторизации в запросе на выборку - PullRequest
0 голосов
/ 15 марта 2019

Я использую ember с ember-simple-auth (1.7.0) для аутентификации. Вот функция адаптера приложения:

authorize(xhr) {
    let { email, token } = this.get('session.data.authenticated');
    let authData = `Token token="${token}", email="${email}"`;
    xhr.setRequestHeader('Authorization', authData);
  }

Когда я использую ember-fetch (5.1.3), для аутентификации заголовок отсутствует:

fetch('/appname/v1/user/count'+count_params).then((response)=>{return response.json()})

Та же модель выполняет успешный запрос emberDS с информацией об аутентификации в заголовке. Как добавить информацию в заголовки выборки?

РЕДАКТИРОВАТЬ:

Это сервис, который я создал для упаковки fetch:

import Service from '@ember/service';
import fetch from 'fetch';
import { inject as service} from "@ember/service"

export default Service.extend({
  fetch(url){
    let { email, token } = this.get('session.data.authenticated')
    let authData = `Token token="${token}", email="${email}"`
    return fetch(url,{headers: {'Authorization': authData}}).then(
      (response)=>{return response.json()}
    )
  },
  session: service()
});

1 Ответ

2 голосов
/ 15 марта 2019

Вам нужно создать службу обертки извлечения и использовать ее вместо «сырого» извлечения и компоновки.

Возможно использование необработанного содержимого с заголовками - https://github.com/github/fetch#post-json

...