Serve static files with Node.js & Socket.IO

Although I already browsed some answers both here on SO and the net, I didn't find what I was looking for. I am also a newb in Node.js so perhaps that's the problem.

This is the code that I have and need for starting Node and Socket.IO:

var app = require('express')();
var http = require('http').Server(app);
var io = require('socket.io')(http);

What I need next would be something like this:

http.use(app.static(__dirname + "/public"));

"app has no method 'static' " is my problem. I tried several other combinations to get both what I read on the net regarding including static css and js and serving httpServer instance to Socket.IO.

Thanks :)

Try this:

var express = require('express');
var path = require('path');
var app = express();
app.use(express.static(path.join(__dirname, 'public')));

express.static is the method you're looking for, not app.static, though they would seem identical.

Also, see this for an example of an application using both socket.io and express. Note that they only use the http server for socket.io, not serving the web pages.