请教前辈一个socket.io的问题
发布于 10 年前 作者 hc2014 7150 次浏览 最后一次编辑是 8 年前

我的server: var express = require(‘express’); var app = require(‘express’)(); var server = require(‘http’).Server(app); var io=require(‘socket.io’)(server); io.sockets.on(‘connection’, function (socket) { socket.emit(‘news’, { hello: ‘world’ }); socket.on(‘my other event’, function (data) { console.log(data);
}); }); …其他省略…

client: <html> <head> <script src="/socket.io/socket.io.js"></script> <script> var socket = io.connect(‘http://localhost:3000’); socket.on(‘news’, function (data) { console.log(data); socket.emit(‘my other event’, { my: ‘data’ }); }); </script> </head> <body > <div></div> </body> </html>

前辈们帮我看看我的socket.io搭载在express服务器上 这样写对不? 然后:如果我这样写的话 前端会报两个错第一个:Failed to load resource: the server responded with a status of 404 (Not Found) http://localhost:3000/socket.io/socket.io.js 第二个:Uncaught ReferenceError: io is not defined 这里说找不到socket.io/socket.io.js 这个JS,确实。我自己也不知道这个JS文件到底是哪一个,代码是copy过来的。node 新人,还请各位多指点指点

5 回复

帖子不能沉,果断继续等

装socket.io模块了么?

@haibo32012 装了 这是我的依赖文件: { “name”:“express-tweet” ,“version”:“0.0.1” ,“dependencies”:{ “express”:“4.5.1” ,“ejs”:“1.0.0” ,“superagent”:“0.3.0” ,“body-parser”:“1.5.0” ,“connect-multiparty”:"" ,“excel-export”:"" ,“node-xlsx”:"" ,“mongodb”:"" ,“cookie”:“0.1.2” ,“socket.io”:“1.0.6” ,“cookiejar”:“2.0.1” }

}

node了解过么,静态文件加载了么?还有你用的都是最新的模块,例子上用的都是以前的,版本不一样,要注意调整内容

@haibo32012 恩 问题找到了,就像你说的那样,例子是以前的语法,我用到 模块是最新的,我socket.io搭载在express服务器的代码 不对。虽然server没有报错。但是 导致client 无法加载socket.io.js。 在http://stackoverflow.com/questions/16981396/get-http-localhost3000-socket-io-socket-io-js-404-not-found上 有一个跟我问题一样的 同学,然后有人给出了最新的语法… 好吧 现在算是能个socket.io勾搭上了。接着要去试试 怎么实时更新数据了

回到顶部