var app = require('express')();
app.get('/', function(req, res) {
res.sendFile(__dirname + "/" + "index.html");
});
<link rel="stylesheet" href="style.css">
I used the above node.js code to send a html file. To get the html file formatted I need to send another css file(style.css).
My question is: how can I send both of these two files(index.html and style.css) using sendFile() and integrate them together in the client side?
The browser should load
style.css
on its own, so you can serve that as a route:However, this would get very cumbersome very quickly as you add more files. Express provides a built in way to serve static files:
https://expressjs.com/en/starter/static-files.html
Keep in mind that if
index.html
is in the same directory as your server code you will also serve the server code as static files which is undesirable.Instead you should move
index.html
, your css, images, scripts, etc. to a subdirectory such as one namedpublic
and use:If you do this, Express will serve
index.html
automatically and you can remove yourapp.get("/"
as well.