var app = require('express')();
app.get('/', function(req, res) {
res.sendFile(__dirname + "/" + "index.html");
});
<link rel="stylesheet" href="style.css">
J'ai utilisé le code node.js ci-dessus pour envoyer un fichier html. Pour obtenir le format html, je dois envoyer un autre fichier css (style.css).
Ma question est: comment puis-je envoyer ces deux fichiers (index.html et style.css) à l'aide de sendFile () et les intégrer ensemble côté client?
Le navigateur devrait charger style.css
seul, vous pouvez donc en faire un itinéraire:
app.get('/style.css', function(req, res) {
res.sendFile(__dirname + "/" + "style.css");
});
Cependant, cela deviendrait très lourd très rapidement à mesure que vous ajoutez des fichiers. Express fournit une méthode intégrée pour servir des fichiers statiques:
https://expressjs.com/en/starter/static-files.html
const express = require("express");
const app = express();
app.use(express.static(__dirname));
Gardez à l'esprit que si index.html
est dans le même répertoire que le code de votre serveur, vous servirez également le code du serveur sous forme de fichiers statiques, ce qui n'est pas souhaitable.
Au lieu de cela, vous devez déplacer index.html
, vos css, images, scripts, etc. dans un sous-répertoire tel que celui nommé public
et utilisez:
app.use(express.static("public"));
Si vous faites cela, Express servira index.html
automatiquement et vous pouvez supprimer votre app.get("/"
ainsi que.