Включить CSS и JS в HTTP сервер?

Я видел, что вы можете использоватьconnect, чтобы использовать служить статические файлы в узле.JS HTTP сервер, как это:

var http = require('http');
var connect = require('connect');
var app = connect().use(connect.static(__dirname + path));
http.createServer(app).listen(8080);

Как бы я реализовал это в моем текущем обработчике?

var http = require("http");
var handler = function(request, response){
    // code
}
http.createServer(handler);

Это вообще возможно? Если да, то как я могу это сделать?

1 ответ

  1. Если вы не хотите использовать старую версиюconnect, которая может работать неправильно, вам придется установитьserve-static, чтобы сделать то, что вы пытаетесь сделать. Смотрите этот ответ https://stackoverflow.com/a/24347442/5382465

    var finalhandler = require('finalhandler')
    var http = require('http')
    var serveStatic = require('serve-static')
    
    // Serve up public folder 
    var serve = serveStatic('public', {'index': ['index.html', 'index.htm']})
    
    // Create server 
    var handler = http.createServer(function onRequest (req, res) {
      serve(req, res, finalhandler(req, res))
    })
    
    // Listen 
    handler.listen(3000)