React Native Expo应用无法连接服务器:Expo Go扫码失败但网页端正常
解决Expo Go手机端无法连接服务器的问题
检查网络环境一致性
- 确保手机和开发设备处于同一WiFi网络,确认路由器未开启AP隔离(部分路由器默认开启该功能,会阻断局域网内设备间的连接)。
- 若使用笔记本,避免同时连接WiFi和有线网络,双重网络可能引发IP路由冲突,导致手机无法识别Expo服务的IP。
验证本地IP配置与防火墙设置
- 确认启动Expo时指定的IP是当前设备的活跃局域网IP:
- 查看设备IP(Windows执行
ipconfig,macOS/Linux执行ifconfig或ip addr) - 用指定IP启动服务:
expo start --host [你的局域网IP]
- 查看设备IP(Windows执行
- 临时关闭开发设备的防火墙,或手动将Expo默认端口(19000、19001、19002)添加到防火墙允许列表。
检查版本兼容性
- 确保手机上的Expo Go是最新版本,旧版本可能与当前项目的Expo SDK存在兼容性问题。
- 查看
package.json中expo依赖的版本,若版本过旧,执行expo upgrade升级到稳定版。
重置缓存与服务状态
- 清除项目缓存:
expo r -c - 关闭当前Expo开发服务器,重启后重新生成二维码,再用Expo Go扫码尝试连接。
尝试隧道模式
- 若局域网存在网络限制(如公司内网、公共WiFi),切换到隧道模式启动服务:
expo start --tunnel,通过云端转发流量绕过局域网连接限制。
内容的提问来源于stack exchange,提问作者Vuyokazi
相关产品推荐
相关产品推荐

