с
у поразить эту конечную точку,http://catfacts-api.appspot.com/api/facts?number=99
через почтальона и он возвращаетсяJSON
Кроме того, я использую create-реагировать-приложение и хотел бы избежать настройки любого сервера конфигурации.
В моем клиентском коде я пытаюсь использоватьfetch
сделать то же самое, но я получаю ошибку:
В запрошенном ресурсе отсутствует заголовок «Access-Control-Allow-Origin». ПроисхождениеHTTP: // локальный: 3000Поэтому не допускается доступ. Если непрозрачный ответ отвечает вашим потребностям, установите режим запроса «no-cors», чтобы получить ресурс с отключенным CORS.
Итак, я пытаюсь передать объект в мой Fetch, который отключит CORS, вот так:
fetch('http://catfacts-api.appspot.com/api/facts?number=99', { mode: 'no-cors'})
.then(blob => blob.json())
.then(data => {
console.table(data);
return data;
})
.catch(e => {
console.log(e);
return e;
});
Интересно, что ошибка, которую я получаю, на самом деле является синтаксической ошибкой с этой функцией. Я не уверен, что мой фактическийfetch
не работает, потому что когда я удаляю объект {mode: 'no-cors'} и предоставляю ему другой URL, он работает просто отлично.
Я также пытался передать объект{ mode: 'opaque'}
, но это возвращает исходную ошибку сверху.
Я верю, что все, что мне нужно сделать, это отключить CORS .. Что мне не хватает?