socket.io服务端console.log无输出 报ERR_NAME_NOT_RESOLVED错误
Socket.io实时聊天应用故障排查修复
核心问题
客户端初始化Socket连接时服务端地址拼写错误,http协议后漏写冒号,导致URL解析失败,浏览器无法和服务端建立Socket连接,抛出ERR_NAME_NOT_RESOLVED错误,用户加入事件无法发送到后端,因此服务端无对应日志输出。
修复操作
- 修正客户端JS的Socket连接地址
原错误代码:
替换为正确格式:const socket = io('http//localhost:3000')const socket = io('http://localhost:3000') - 检查服务端运行环境
- 项目根目录执行
npm i socket.io,确认已安装Socket.io依赖 - 启动服务端脚本,确认3000端口未被其他进程占用
- 项目根目录执行
- 可选优化:若前端页面和Socket服务同域部署,初始化时可省略地址参数,直接写
const socket = io(),避免硬编码地址导致的跨域、部署适配问题。
验证流程
- 重启Node服务端进程
- 刷新前端页面,在prompt弹窗输入用户名提交
- 服务端控制台将正常输出
New user [输入的用户名]格式的日志
内容的提问来源于stack exchange,提问作者Ayush Parui
相关产品推荐
相关产品推荐

