2012-04-17 8 views
5

Ich versuche, verbinden und socket.io, um schön und einfach zusammen zu arbeiten. Ich habe den folgenden Code auf Serverseite:Connect2 und Socket.io

var connect = require('connect'), 
    io = require('socket.io'); 

var app = connect().use(connect.logger('dev')); 
var sio = io.listen(app); 

app.listen(8000); 

wenn ich http://localhost:8000/socket.io/socket.io.js öffne ich bin bekommen Fehler:

Cannot GET /socket.io/socket.io.js 

Und Socket.IO nicht arbeiten, ich bin versucht, Datei kopieren und die Last von einem anderen Lage, aber socket.io Anfragen erreichen den Server nicht

+2

https://github.com/senchalabs/connect/issues/500 # issuecomment-4620773 – skyman

+1

Sie sollten dies als Antwort auf Ihre Frage posten, und sie akzeptieren, für zukünftige Referenz. –

Antwort

10

SOLUTION

, wenn jemand auf diese Frage kommt, müssen Sie die Verbindungs-/express App in einem Nicken wickeln e http.Server. Die app.listen() Methode ist eine bequeme Methode, um diese und gibt den Server:

var io = require('socket.io'); 
var app = connect(); 
var server = app.listen(3000); 
io.listen(server); 

oder der folgenden entspricht:

var io = require('socket.io'); 
var http = require('http'); 
var app = connect(); 
var server = http.createServer(app); 
server.listen(3000); 
io.listen(server);