如何解决Expo Go本地连接Express后端的网络错误并实现本地运行?
本地同时运行Expo Go前端与Express后端的解决方案
替换localhost为Mac的局域网IP
iPhone无法通过localhost:3000访问Mac本地后端,因为localhost在手机设备上指向自身而非Mac。将前端请求地址替换为Mac的局域网IP(即你Expo Go地址中的192.168.2.129),也就是http://192.168.2.129:3000/。确保Express后端监听正确地址
启动Express服务时,不要仅监听localhost,需要改为0.0.0.0,让服务绑定到所有可用网络接口,这样同一局域网内的手机才能访问。示例代码:app.listen(3000, '0.0.0.0', () => { console.log('Server running on http://192.168.2.129:3000'); });验证网络连通性
在iPhone的浏览器中直接访问http://192.168.2.129:3000,如果能看到后端返回的内容(比如测试接口的响应),说明网络链路正常,再去调试前端的请求逻辑即可。
内容的提问来源于stack exchange,提问作者Eva Anna
相关产品推荐
相关产品推荐

