Не удается получить данные из Yelp API в приложении React

Я пытаюсь отобразить данные из Yelp API в одном из моих компонентов и получаю следующую ошибку:

Fetch API cannot load https://api.yelp.com/v3/businesses/search?location=New%20York. Response for preflight has invalid HTTP status code 500

До этого у меня была ошибка CORS, но я только что установил плагин для Chrome (временное решение?).

Это функция для рендеринга данных

const yelp = require('yelp-fusion');

const clientId = "MY ID";
const clientSecret = "MY KEY";

const token = "MY TOKEN";

const client = yelp.client(token);


let businessSearch = (inputLocation) => {
  client.search({
    location: inputLocation
  }).then(response => {
    console.log(response.jsonBody.businesses[0]);
  }).catch(e => {
    console.log(e);
  });
}


module.exports = {
  businessSearch,
};

У меня смутное представление о том, что происходит, проблема заключается в попытке получить данные на моем внутреннем сервере, но я не уверен, как это исправить. Любые идеи?


person Community    schedule 31.07.2017    source источник
comment
Вы пробовали искать код состояния HTTP 500?   -  person Andrew Li    schedule 31.07.2017
comment
Мне все еще кажется, что это ошибка CORS. Ваш предполетный запрос, то есть запрос OPTIONS, не работает. Можете ли вы попробовать сделать то же самое с помощью cURL-запроса?   -  person gargsms    schedule 31.07.2017
comment
getpostman.com - хороший инструмент для тестирования вызовов API, если вы не являетесь поклонником cURL.   -  person canaan seaton    schedule 31.07.2017
comment
Да, похоже. Когда я запускаю файл api с console.log(businessSearch("New York"));, я могу получить данные. Никогда не работал с API в React, поэтому я не понимаю, почему токен не передается в мой компонент.   -  person    schedule 31.07.2017
comment
Надо было упомянуть, что я использую модуль Yelp-Fusion, который выполняет все запросы. Похоже, он не поддерживает CORS: github.com/Yelp/yelp-fusion/issues/221   -  person    schedule 31.07.2017
comment
Вам понадобится промежуточный API для обработки запросов от вашего приложения, тогда это приложение сможет отправлять запросы на yelp. Обычно для этого достаточно небольшого экспресс-сервера.   -  person Ohgodwhy    schedule 31.07.2017
comment
Возможный дубликат React Isomorphic Fetch No ' Заголовок Access-Control-Allow-Origin с Yelp Fusion API   -  person Cody Reichert    schedule 01.08.2017