Я создал приложение React-Native, подключенное к API Watson REST. Использование библиотеки выборки, которая является частью ReactNative, все работает хорошо, для получения списка рабочих пространств, как это:IBM Watson (разговор) REST API с Fetch (whatwg-fetch)
const myAuth = new Buffer(USR+':'+PWD).toString('base64');
const myInit = {
method: 'GET',
headers: {
'Accept': 'application/json',
'Content-Type': 'application/json',
'Origin': '',
'Authorization': 'Basic ' + myAuth,
}
};
return fetch(URL, myInit)
.then((response) => response.json())
.then((responseJson) => { ... }
Я сейчас движется к React (а не ReactNative) и whatwg-fetch библиотека. Тот же код не работает. Во-первых, я получил ошибку:
Поле заголовка запроса Авторизация не допускается заголовками Access-Control-Allow-Headers в предполетном ответе.
Затем, прочитав десятки нитей об этих типах проблем, это стало черной магией. Добавление заголовков для Access-Control-Allow-Methods, Access-Control-Allow-Headers и т. Д. До сих пор ничего не работало. В конце концов проблема стала такой:
В заголовке заголовка заголовка заголовка заголовка заголовка заголовка заголовка заголовка заголовка поля заголовка заголовка поля заголовка заголовка поля заголовка заголовка заголовка заголовка заголовка поля заголовка заголовка заголовка заголовка заголовка заголовка заголовка заголовка заголовка заголовка поля заголовка заголовка заголовка.
Может кто-нибудь указать мне, пожалуйста, на пример или код, который работает, пожалуйста?
==============
ОБНОВЛЕНИЯ ...
Спасибо @sideshowbarker и @FakeRainBrigand. Я предполагаю, что серверная сторона является обязательной для клиентского приложения браузера.
Так почему же он работал с React-Native fetch @FakeRainBrigand? – TalBeno
Реагирующие приложения запускаются за пределами модели веб-безопасности одинакового происхождения, которая запрещает веб-приложениям делать запросы с перекрестным происхождением (если сайт не отправляется на запросы, отвечая заголовком «Access-Control-Allow-Origin». Реакт выполняется внутри кода веб-приложения в браузере, а браузеры - это единственное место, где применяются ограничения перекрестного происхождения/CORS. Реагирующие приложения запускаются за пределами браузера, поэтому они не связаны никакими перекрестными ограничениями (они не Фактически, это происходит из любого источника, поэтому понятие «кросс-происхождение» не относится к ним. – sideshowbarker