I'm trying to follow the instructions here
http://socket.io/#how-to-use
However, I seem to be too dumb to understand why I cannot reference socket.io.jss on the client side. I read similar messages here, but they do not seem to be correct: NodeJS Express does not serve '/socket.io/socket.io.js'
Here is the full list of applications:
var application_root = __dirname, express = require('express'), //Web framework path = require('path'), //Utilities for dealing with file paths pg = require('pg'); //Postgres integration //Create server var app = express(); // Configure server app.configure(function () { //parses request body and populates request.body app.use(express.bodyParser()); //checks request.body for HTTP method overrides app.use(express.methodOverride()); //perform route lookup based on url and HTTP method app.use(app.router); //Where to serve static content app.use(express.static(path.join(application_root, 'public'))); //Show all errors in development app.use(express.errorHandler({ dumpExceptions: true, showStack: true })); }); //Start server var port = 4711; app.listen(port, function () { console.log('Express server listening on port %d in %s mode', port, app.settings.env); }); //Start socket.io var server = require('http').createServer(app), io = require('socket.io').listen(server);
Now, if I try to reference js on the client side, I get 404.
<script src="/socket.io/socket.io.js"></script>
Does anyone know why Express 3 does not allow socket.io to serve the client library?
source share