2016-10-04 4 views
0

Я видел, что вы можете использовать connect использовать служат статические файлы на сервере Node.js HTTP, как это:Включить CSS и 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); 

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

+0

Почему бы вам просто не указать каталог для обслуживания статических файлов? то есть app.use (express.static ('public'))? – vincentjp

+0

@vincentjp Потому что я не использую Express. – baranskistad

+1

См. Использование node.js в качестве простого веб-сервера: http://stackoverflow.com/questions/6084360/using-node-js-as-a-simple-web-server – Bruno

ответ

0

Если вы хотите использовать более старую версию 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)