Не могу получить данные из локального API React-Native - PullRequest
0 голосов
/ 20 июня 2019

У меня есть веб-приложение, реагирующее с помощью API, созданного в Laravel. Я хочу сделать мобильное приложение, используя тот же API. Я не могу получить данные, потому что я получаю ошибку NETWORK REQUEST FAILED. Вот как я пытаюсь получить данные:

handleButton = () => {
    try {
        fetch(`127.0.0.1:8081/test`).then(response =>
        console.log(response)
    );
        } catch (e) {
            console.log(e);
        }
    };

Я попытался изменить настройки ip in dev на id моей машины, я пытался использовать localhost, а не ip (127.0.0.1), но никто из них не исправил его ... Кажется, я не могу найти ничего другого. Вот текст ошибки:

Possible Unhandled Promise Rejection (id: 0):
TypeError: Network request failed
TypeError: Network request failed
    at XMLHttpRequest.xhr.onerror (blob:http://localhost:8081/cfc373de-8318-4df3-b46a-7b17d4926c5e:42556:18)
    at XMLHttpRequest.dispatchEvent (blob:http://localhost:8081/cfc373de-8318-4df3-b46a-7b17d4926c5e:47998:27)
    at XMLHttpRequest.setReadyState (blob:http://localhost:8081/cfc373de-8318-4df3-b46a-7b17d4926c5e:46859:20)
    at XMLHttpRequest.__didCompleteResponse (blob:http://localhost:8081/cfc373de-8318-4df3-b46a-7b17d4926c5e:46686:16)
    at blob:http://localhost:8081/cfc373de-8318-4df3-b46a-7b17d4926c5e:46796:47
    at RCTDeviceEventEmitter.emit (blob:http://localhost:8081/cfc373de-8318-4df3-b46a-7b17d4926c5e:16875:37)
    at MessageQueue.__callFunction (blob:http://localhost:8081/cfc373de-8318-4df3-b46a-7b17d4926c5e:16488:44)
    at blob:http://localhost:8081/cfc373de-8318-4df3-b46a-7b17d4926c5e:16245:17
    at MessageQueue.__guard (blob:http://localhost:8081/cfc373de-8318-4df3-b46a-7b17d4926c5e:16442:13)
    at MessageQueue.callFunctionReturnFlushedQueue (blob:http://localhost:8081/cfc373de-8318-4df3-b46a-7b17d4926c5e:16244:14)

РЕДАКТИРОВАТЬ:

Я использую эмулятор андроид студии, потому что у меня нет андроид устройства под управлением андроид> 5

Ответы [ 2 ]

0 голосов
/ 20 июня 2019

Используйте IP-адрес вашего устройства в локальной сети.

Откройте терминал / cmd.

Если вы используете Mac, вы можете использовать ifconfig, и он обычно находится подen0.Вы увидите что-то вроде 192.168.0.32 или похожее.

Если вы используете Windows, вы можете использовать ipconfig.

0 голосов
/ 20 июня 2019

Проверьте интернет-соединение вашей системы, на котором работает сервер или порт, или оно может работать медленно. Если это не сработает, тогда используйте axios из Reaction-native несмотря на fetch.it будет работать.

...