表达:如何使用sendFile将HTML和CSS一起发送?
var app = require('express')();app.get('/', function(req, res) {
res.sendFile(__dirname + "/" + "index.html");
});
<link rel="stylesheet" href="style.css">
我使用上面的node.js代码发送了一个html文件。为了获得格式化的html文件,我需要发送另一个CSS文件(style.css)。
我的问题是:如何使用sendFile()发送这两个文件(index.html和style.css)并将它们集成到客户端?
回答:
浏览器应style.css
自行加载,因此您可以将其用作路由:
app.get('/style.css', function(req, res) { res.sendFile(__dirname + "/" + "style.css");
});
但是,随着您添加更多文件,这将变得非常麻烦。Express提供了一种内置的方式来服务静态文件:
https://expressjs.com/cn/starter/static-
files.html
const express = require("express");const app = express();
app.use(express.static(__dirname));
请记住,如果index.html
与服务器代码位于同一目录中,则还将服务器代码作为静态文件提供,这是不可取的。
相反,您应该将index.html
,css,图像,脚本等移动到一个子目录,例如命名public
并使用:
app.use(express.static("public"));
如果这样做,Express将index.html
自动提供服务,您也可以删除app.get("/"
它。
以上是 表达:如何使用sendFile将HTML和CSS一起发送? 的全部内容, 来源链接: utcz.com/qa/410436.html