Welcome to ShenZhenJia Knowledge Sharing Community for programmer and developer-Open, Learning and Share
menu search
person
Welcome To Ask or Share your Answers For Others

Categories

In the third version of ExpressJS express.createServer() changed to express() this changes makes difficult to bind socket.io on a same port. Maybe somebody could find robust decision.

Now, this doesn't work:

var express = require('express')
, app = express.createServer()
, io = require('socket.io').listen(app);

My current workflow: https://gist.github.com/3596852

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
thumb_up_alt 0 like thumb_down_alt 0 dislike
283 views
Welcome To Ask or Share your Answers For Others

1 Answer

It's described on the socket.io github page (as @Golo stated in your comment):

var app = express()
  , server = require('http').createServer(app)
  , io = io.listen(server);

server.listen(80);

This works, I have it running.

Probably what Golo have forgotten is to change the listen from app.listen(80) to server.listen(80). I've struggled with this too until I realised my stupid mistake.


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
thumb_up_alt 0 like thumb_down_alt 0 dislike
Welcome to ShenZhenJia Knowledge Sharing Community for programmer and developer-Open, Learning and Share
...