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

Socket.io实现JS聊天功能 代码与老师近似却无法运行如何排查

问题排查结果

1. Socket事件监听名称错误(核心故障)

你的代码中Socket服务器监听的事件名称写错了,和前端发送的事件名称不匹配:

  • 老师代码里监听前端发送的chatMessageFromBrowser事件:
socket.on('chatMessageFromBrowser', function(data) {
  • 你的代码错误监听了本该是服务器发送给前端的chatMessageFromServer事件:
socket.on('chatMessageFromServer', function(data) {

修改方式:把你的监听事件名称改为chatMessageFromBrowser即可。

2. 路由挂载顺序错误

Express中间件/路由的执行是按注册顺序生效的,你的代码顺序不符合常规逻辑,容易引发额外问题:

  • 老师代码顺序:先配置静态资源、模板引擎,再挂载路由
app.use(express.static('public'))
app.set('views', 'views')
app.set('view engine', 'ejs')
app.use('/', router)
  • 你的代码顺序:先挂载路由,再配置静态资源和模板引擎
app.use('/', router)
app.use(express.static('public'))
app.set('views', 'views')
app.set('view engine', 'ejs')

修改方式:调整顺序,把路由挂载放在静态资源、模板引擎配置之后。

3. 可选修正项

你的session配置里的secret单词拼写错误:Javacsript应为JavaScript,不影响功能但建议修正。

内容的提问来源于stack exchange,提问作者user2405755

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.03 15:45:04