node.js: socket.io vs express.static
Ich habe die folgenden server.js ausgeführt:
<code>module.exports = server; var express = require('express'); var fs = require('fs'); var server = express.createServer(); var port = 58000; server.listen(port); var io = require('socket.io').listen(server); server.use(express.static('/', __dirname + '/../public')); server.use(express.logger()); io.on('connection', function(client){ console.log('new client connected ' + client); client.on('message', function(){ console.log('client wants something'); }); }); </code>
Einfacher express.static-Server für Dateien in einem / public-Unterordner sowie socket.io-Funktionalität. Bei diesem Setup schlägt jede Anforderung für die Datei "socket.io.js" fehl, d. H.
<code>http://localhost:58000/socket.io/socket.io.js </code>
gibt einen 404-Fehler zurück (Datei nicht gefunden). Statischer Dateiserver funktioniert ordnungsgemäß. Wenn ich einfach das 'http'-Modul anstelle von' express 'verwende (auskommentiere express.static- und express.logger-Zeilen), wird socket.io.js korrekt bedient. Wie kann ich beide Funktionen kombinieren?