You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Web与移动端共享Node.js后端?请求报错求解

React Native 调用 Node.js 接口的常见问题解答

核心问题解答

React Native 确实可以使用和 React Web 端几乎一致的方式(比如 fetch、axios 这类请求库)向 Node.js 接口发起请求,但并非完全不需要任何修改,你遇到的 TypeError: Network Request Failed 是 RN 开发中常见的网络类错误,可从以下几个方向排查:

具体排查点

  • 本地服务访问问题
    如果你的 Node.js 服务运行在本地开发环境,别用 localhost 作为接口地址,要换成电脑的局域网 IP(比如 192.168.1.100)——模拟器/真机无法识别本机的 localhost,必须通过局域网IP访问。
  • 安卓明文请求限制
    安卓 9 及以上版本默认禁止明文 HTTP 请求,若你的 Node.js 接口用的是 HTTP 协议,要么把接口升级为 HTTPS,要么修改安卓项目的 AndroidManifest.xml 文件,添加 android:usesCleartextTraffic="true" 允许明文请求。
  • 请求代码异常处理
    错误提示里的 Possible Unhandled Promise Rejection 说明你的异步请求没有做异常捕获处理。不管是 React Web 还是 RN,异步请求都必须通过 try/catch(async/await 写法)或者 .catch()(Promise 链式写法)捕获异常,避免未处理的 Promise 报错。
  • 请求库与环境兼容性
    虽然 fetch、axios 这类库同时支持 Web 和 RN,但要检查你的请求封装代码里有没有用到 Web 端专属的 API(比如 window 对象),这类代码在 RN 环境下会直接报错。
  • 网络与服务状态
    确认模拟器/真机和运行 Node.js 服务的电脑处于同一个局域网,检查防火墙是否拦截了接口端口,同时确保 Node.js 服务正常启动、接口端口配置正确。

内容的提问来源于stack exchange,提问作者Cláudio Vitor Dantas

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.17 06:43:11