Реагируйте администратором на отдых, добавив X-Total-Count - PullRequest
0 голосов
/ 01 мая 2018

Я использую admin-on-rest, но получаю сообщение об ошибке при попытке подключиться к github api

Ошибка:

В ответе HTTP отсутствует заголовок X-Total-Count. REST-клиент jsonServer ожидает, что ответы для списков ресурсов будут содержать этот заголовок с общим количеством результатов для разбивки на страницы. Если вы используете CORS, объявляли ли вы X-Total-Count в заголовке Access-Control-Expose-Headers?

и

Предупреждение: отсутствует перевод для ключа: «В ответе HTTP отсутствует заголовок X-Total-Count. Клиент REST jsonServer ожидает ответы для списков ресурсов, содержащих этот заголовок, с общим числом результатов для построения. нумерацию страниц. Если вы используете CORS, объявили ли вы X-Total-Count в заголовке Access-Control-Expose-Headers? "

Я пытаюсь добавить заголовок X-Total-Count, но затем получаю новую ошибку

render() {

const httpClient = (url, options = {}) => {
  if (!options.headers) {
    options.headers = new Headers({Accept: 'application/json'});
  }
  // add your own headers here
  options.headers.set('X-Total-Count', '32');
  return fetchUtils.fetchJson(url, options);
}

const restClient = jsonServerRestClient('https://api.github.com', httpClient);

return (
  <Admin restClient={restClient}>
    <Resource name="users" list={PostList}/>
  </Admin>
);
}

Не удалось загрузить https://api.github.com/users?_end=10&_order=DESC&_sort=id&_start=0: Поле заголовка запроса x-total-count не разрешено Access-Control-Allow-Headers в ответе перед полетом.

1 Ответ

0 голосов
/ 03 мая 2018

Как сказал Кунал Парик, этот заголовок должен быть частью ответа, а не запроса на это jsonRestClient.

Вам нужно будет создать пользовательский restClient, специфичный для API github. Пожалуйста, прочитайте https://marmelab.com/admin-on-rest/RestClients.html#writing-your-own-rest-client.

...