React Native启动报错求助:ERR_SOCKET_BAD_PORT端口超出范围
解决React Native的ERR_SOCKET_BAD_PORT(端口65536)问题
嘿,我之前在Mac上跑RN项目时也踩过这个端口的坑!咱们先把问题理清楚:错误提示里的ERR_SOCKET_BAD_PORT是因为端口65536超出了合法范围——TCP/UDP端口的有效值是0到65535,所以这个端口肯定用不了。下面是几个亲测有效的解决办法:
1. 手动指定合法端口启动项目
直接在启动RN服务时指定一个在0-65535之间的端口,比如最常用的8081:
react-native start --port 8081
如果是运行iOS/安卓项目,也要同步指定端口:
# iOS react-native run-ios --port 8081 # 安卓 react-native run-android --port 8081
2. 检查项目配置里的端口设置
有时候项目的配置文件里可能不小心硬编码了65536这个端口,你可以检查这两个文件:
- metro.config.js:看看server配置里的port值,改成合法端口
module.exports = { server: { port: 8081, // 替换成0-65535之间的数值 }, // 其他配置... }; - app.json:部分项目会在这里配置调试端口,确认没有设置成65536
3. 清理缓存重置服务
缓存异常也可能导致RN自动分配端口出错,试试重置缓存后重启:
react-native start --reset-cache
4. 小补充:真机调试注意事项
如果是用真机调试,还要确保你的Mac和设备在同一局域网,并且指定的端口没有被防火墙拦截,不然可能会出现连接不上的情况。
内容的提问来源于stack exchange,提问作者Léo Pr
相关产品推荐
相关产品推荐

