【发布时间】:2020-04-12 19:04:29
【问题描述】:
我正在使用 Expo 构建一个 React Native 应用程序,我正在尝试像这样获取我的后端服务器:
useEffect(() => {
fetch('http://192.168.1.89:8080/api/ciborg/groups')
.then((response) => response.json())
.then((json) => setData(json))
.catch((error) => console.log("->>>>"+error))
.finally(() => setLoading(false));
});
但是总是给我以下错误
“TypeError:获取失败”。
我已经尝试了以下方法:
fetch('http://192.168.1.89:8080/api/ciborg/groups')
fetch('http://localhost:8080/api/ciborg/groups')
fetch('http://127.0.0.1:8080/api/ciborg/groups')
但结果总是一样的。但是获取外部 API,例如:https://reactnative.dev/movies.json 有效。
有人可以帮忙吗? 谢谢
【问题讨论】:
-
您能否确认您的服务器已启动并在端口
8080中运行? -
你可以尝试使用 POSTMAN 获取吗?
-
(nodejs server)代码有:app.listen(8080, function() { console.log('Listening on port: 8080'); });在控制台中:侦听端口:8080 例如,后端识别“GET”请求,但在前端它总是捕获并出错。而且我可以用邮递员请求很好地测试后端,即使我在后端(nodejs)端创建一个网络浏览器应用程序来查看请求,我也可以。
标签: reactjs api react-native fetch expo