无法从本地API React-Native获取数据

时间:2019-06-20 09:10:33

标签: api react-native fetch

我有一个Web应用程序,使用Laravel中的API进行响应。我想使用相同的API制作移动应用。我无法获取数据,因为出现NETWORK REQUEST FAILED错误。这就是我尝试获取数据的方式:

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

我尝试将开发设置中的ip更改为我的机器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)

编辑:

我正在使用android studio的模拟器,因为我没有运行android> 5的android设备

2 个答案:

答案 0 :(得分:0)

在本地网络上使用计算机的IP。

打开终端/ cmd。

如果您使用的是Mac,则可以使用ifconfig,它通常位于en0下。您会看到类似192.168.0.32或类似的内容。

如果您使用的是Windows,则可以使用ipconfig

答案 1 :(得分:-1)

检查正在运行服务器或端口的系统的Internet连接,或者连接速度可能很慢。 如果它不起作用,则尽管有fetch,也可以使用react-native的axios。