2016-10-04 2 views
0

sah ich, dass Sie connect verwenden können statische Dateien in einem Node.js HTTP-Server wie diese dienen zu verwenden:CSS und JS in HTTP-Server einbeziehen?

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

Wie würde ich dies in meinem aktuellen Handler implementieren?

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

Ist das überhaupt möglich? Wenn ja, wie kann ich es erreichen?

+0

Warum geben Sie nicht einfach das Verzeichnis an, in dem statische Dateien bereitgestellt werden sollen? d. h. app.use (express.static ('public'))? – vincentjp

+0

@vincentjp Weil ich nicht Express benutze. – baranskistad

+1

Siehe Verwenden von node.js als einfacher Webserver: http://stackoverflow.com/questions/6084360/using-node-js-as-a-simple-web-server – Bruno

Antwort

0

Wenn Sie nicht eine ältere Version von connect verwenden möchten, die möglicherweise nicht richtig funktioniert, müssen Sie serve-static installieren, um das zu tun, was Sie versuchen. Siehe diese Antwort 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)