express.static doesn't work in node.js project -


i have socket.io project doesn't let me use public folder. launch hello.js

http://i.stack.imgur.com/ugdzw.png

but see

http://i.stack.imgur.com/fzhjj.png

i tried , reinstalled node.js

var express = require('express'); var app = express(); var http = require("http"); var io = require('socket.io'); var url = require('url'); var fs = require('fs');  app.use(express.static(__dirname + '/public'));  var server = http.createserver(function(request, response){     console.log('connection');     var path = url.parse(request.url).pathname;      switch(path){         case '/':             response.writehead(200, {'content-type': 'text/html'});             response.write('hello world');             response.end();             break;         case '/socket.html':             fs.readfile(__dirname + path, function(error, data){                 if (error){                     response.writehead(404);                     response.write("opps doesn't exist - 404");                 }                 else{                     response.writehead(200, {"content-type": "text/html"});                     response.write(data, "utf8");                 }                 response.end();             });             break;         default:             response.writehead(404);             response.write("opps doesn't exist - 404");             response.end();             break;     } });  server.listen(8001); 

you're not using express app, instead bare http.server. if want use express app (which static middleware being used), should swap out custom callback http.createserver() app reads:

var server = http.createserver(app) 

then socket.io integration express, you'll need follow this example.


Comments

Popular posts from this blog

python - TypeError: start must be a integer -

c# - DevExpress RepositoryItemComboBox BackColor property ignored -

django - Creating multiple model instances in DRF3 -