socket.io/socke.io.jsが404を返してどうにも動かない
socket.ioのサンプルを動かしてみたのですが、クライアント側でsocket.io/socke.io.jsのリクエストに404が返されてしまい、
どうにも動きません。
予備知識ゼロでサンプルコピペでやっていたので、何をどうしていいか皆目見当がつかないまま、
とりあえずググって見ると、それらしい回答がありました。
環境
- node 0.8.4
- socket.io 0.9.11
- express 3.0.1
Before
//listenする http.createServer(app).listen(app.get('port'), function(){ console.log("Express server listening on port " + app.get('port')); }); //listenしているサーバーに後付け var io = require('socket.io').listen(app); io.sockets.on('connection', function(socket) { //do something });
After
//まだlistenしない var server = http.createServer(app); var io = require('socket.io').listen(server); io.sockets.on('connection', function(socket) { //do something }); //socket.ioの準備をしてからlistenする server.listen(app.get('port'), function(){ console.log("Express server listening on port " + app.get('port')); });
理解が正しいかわかりませんが、
StackOverflowに書かれていることそのままやったら解決しました。