Я использую сервис для доступа к геолокации пользователя.Проблема в том, что запрос работает ТОЛЬКО при включении режима «Проверка сети» в отладчике реагирования.
В противном случае происходит сбой с ошибкой:
TypeError: Network request failed
at XMLHttpRequest.xhr.onerror (whatwg-fetch.js:504)
at XMLHttpRequest.dispatchEvent (event-target.js:172)
at XMLHttpRequest.setReadyState (XMLHttpRequest.js:580)
at XMLHttpRequest.__didCompleteResponse (XMLHttpRequest.js:394)
at XMLHttpRequest.js:507
at RCTDeviceEventEmitter.emit (EventEmitter.js:189)
at MessageQueue.__callFunction (MessageQueue.js:366)
at MessageQueue.js:106
at MessageQueue.__guard (MessageQueue.js:314)
at MessageQueue.callFunctionReturnFlushedQueue (MessageQueue.js:105)
Для выборки данных я использую обычную выборку, но уже пробовал XHR и axios с теми же результатами.
export function getUserGeoLocation() {
const url = 'https://geoip.tradesmarter.com/json';
return fetch(url)
.then(response => response.json())
.catch(error => {
console.log(error);
});
}
Тот же запрос работает на веб-платформе, которая использует Angular с jsonp.
export function getUserGeoLocation() {
const url = 'https://geoip.tradesmarter.com/json';
const opt = {
timeout: 1000,
};
const promise = new Promise((resolve, reject) =>
jsonp(url, opt, (err, data) => {
if (err) {
reject(err.message);
} else {
resolve(data);
}
})
);
return promise;
}
Кто-нибудь сталкивался с подобной проблемой?