一尘不染

React Native:获取请求失败,并显示错误-TypeError:网络请求失败(…)

node.js

我正在使用React
Native开发一个简单的应用程序。我正在Android设备上对其进行测试。我创建了一个Node.js服务器来监听请求,该服务器运行在http://
localhost:3333
/上
。接下来,我要从index.android.js进行提取请求。下面是代码。

fetch('http://localhost:3333/', 
        {
            'method': 'GET',
            'headers': {
                'Accept': 'text/plain',                                     
            }
        }       
    ) 
.then((response) => response.text()) 
.then((responseText) => {
    console.log(responseText);  
}) 
.catch((error) => {
    console.warn(error);
});

节点服务器上请求处理程序的代码如下

app.use(function(req, res, next) {
  res.header("Access-Control-Allow-Origin", "*");
  res.header("Access-Control-Allow-Headers", "Origin, X-Requested-With, Content-Type, Accept");
  next();
}); 
app.use(express.static('public'));
app.get('/', function(req, res){ 
    console.log('Request received for /');
    res.send("this is the response from the server");
    res.end();
});

但是,获取请求无效。我在Chrome控制台中收到的错误是:TypeError:网络请求失败(…)。

如何使这项工作?


阅读 438

收藏
2020-07-07

共1个答案

一尘不染

由于您的Android设备具有自己的IP,因此您需要将URL指向计算机的IP地址,而不仅仅是本地主机。例如fetch('http://192.168.0.2:3333/')

2020-07-07