如何从socket.io 1.2迁移到socket.io 0.9.16?

我有这个代码写在Socket.io 1.2中

var app=require('express')(); var http=require('http').Server(app); var io=require('socket.io')(http); var room; var messageEmitted;; app.get('/', function(req, res){ res.sendFile(__dirname +'/index.html'); }); app.get('/lol', function(req, res){ res.sendFile(__dirname +'/lol.html'); }); io.use(function(socket,next){ var handShakeData=socket.request; room=handShakeData._query['roomName']; messageEmitted=handShakeData._query['messageText']; next(); }); io.on('connection',function(socket){ console.log('A user connnected on : '+room); socket.join(room); io.to(room).emit('emittedMessages',messageEmitted); console.log(messageEmitted); /*socket.on('emittedMessages',function(msg){ //socket.emit(msg); // Send message to sender socket.broadcast.emit(msg); // Send message to everyone BUT sender });*/ socket.on('disconnect', function(){ // io.to(room).emit('emittedMessages','A User Disconnected on: '+room); console.log('A user disconnected'); }); }); http.listen(3000,function(){ console.log('Listening oon Port: 3000'); }); 

而这个代码工作得很好。

我试图从Android库访问这个代码Gottox ,这个版本需要0.9.16

但是,当我尝试通过input以下命令移动到旧的库,即0.9.16:

npm remove socket.io

npm install socket.io@0.9.16

当我运行:

node server.js

我得到这个错误:

 D:\NodeJSSocketBroadcast>node server.js D:\NodeJSSocketBroadcast\server.js:3 var io=require('socket.io')(http); ^ TypeError: object is not a function at Object.<anonymous> (D:\NodeJSSocketBroadcast\server.js:3:28) at Module._compile (module.js:456:26) at Object.Module._extensions..js (module.js:474:10) at Module.load (module.js:356:32) at Function.Module._load (module.js:312:12) at Function.Module.runMain (module.js:497:10) at startup (node.js:119:16) at node.js:906:3 

如何在旧版本的socket.io中实现相同的function? 我找不到任何文件。 我也发现这个链接描述相同。

请帮忙。! 🙁 🙁

 const server = require('http').createServer(); var io = require('socket.io').listen(server); server.listen(1337);` 

但我build议使用https://github.com/nkzawa/socket.io-client.java – 支持socket.io 1.2.1的java实现