The Issues
-
First of all you need to be looking at the server port that the server is bound on (
app.listen(3001);
) on the client side in order to reach the server at all. -
As for socket.io, adding
http://localhost:3001
before the rest of the source in the link tag solves this problem. This is apparently due to the way the network binds ports to localhost, however I will try to find some more information on the cause;
What to change:
The port binding for the server:
var socket = io.connect('http://localhost');
should be change to
var socket = io.connect('http://localhost:3001');
Making socket.io behave:
<script src="https://stackoverflow.com/socket.io/socket.io.js"></script>
should be change to
<script src="http://localhost:3001/socket.io/socket.io.js"></script>