一般来说,我是 node.js 和 js 的新手。我有一个简单的应用程序,它有一个 styles.css,但我不知道如何在 app.js 上链接它。
在index.html
它有 <link rel="stylesheet" type="text/css" href="css/styles.css">
这是我的 node.js 的 app.js:
const http = require('http');
const fs = require('fs');
const hostname = '127.0.0.1';
const port = 3000;
fs.readFile('index.html', (err, html) =>{
if (err){
throw err;
}
const server = http.createServer((req,res) => {
res.statusCode = 200;
res.setHeader('Content-type', 'text/html');
res.write(html);
res.end();
});
server.listen(port, hostname, () => {
console.log('Server started on port ' + port);
});
});
那我应该怎么修改app.js
呢?以便它能够找到 css 文件?
最佳答案
对于您返回 index.html 的每个请求。
试试这个:
const http = require('http');
const fs = require('fs');
const hostname = '127.0.0.1';
const port = 3000;
fs.readFile('index.html', (err, html) =>{
if (err){
throw err;
}
const server = http.createServer((req,res) => {
res.statusCode = 200;
if(req.url == '/'){
res.setHeader('Content-type', 'text/html');
res.write(html);
res.end();
res.statusCode = 200;
}
else if(req.url == '/css/styles.css'){
res.setHeader('Content-type', 'text/css');
res.write(fs.readFileSync('css/styles.css'));
res.end();
} else {
res.write("invalid request")
res.end();
}
});
server.listen(port, hostname, () => {
console.log('Server started on port ' + port);
});
});
关于javascript - 如何在 node.js 中链接 css 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53253739/