gpt4 book ai didi

node.js - nodejs express css 和 js 未加载

转载 作者:搜寻专家 更新时间:2023-10-31 23:48:46 25 4
gpt4 key购买 nike

我在 nodejs 上使用 express。我加载的 html 文件没有获取 java 脚本和 css 文件。

index.html:

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Bootstrap 101 Template</title>

<!-- Bootstrap -->
<link href="css/bootstrap.min.css" rel="stylesheet">
</head>
<body>
<h1>Hello, world!</h1>

<!-- jQuery (necessary for Bootstrap's JavaScript plugins) -->
<script type="" src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"> </script>
<!-- Include all compiled plugins (below), or include individual files as needed -->
<script src="js/bootstrap.js"></script>
</body>
</html>

这是我在 nodejs 中的表达部分:

app.get('/', function(req, res){

console.log(req.path);

fs.readFile('mongo_client/index.html',function (err, data){
if(!err)
{
res.writeHead(200, {'Content-Type': 'text/html','Content-Length':data.length});
res.write(data);
res.end();
}
else
{
res.writeHead(400, {'Content-Type': 'text/html'});
res.end("index.html not found");
}
});
});

唯一的console.log是“/”一次。甚至不需要 css 和 js 文件。

编辑:

我使用了静态中间件,但它也不起作用:

app.use(express.static(__dirname + '/public'));
app.get('/', function(req, res){

fs.readFile('mongo_client/index.html',function (err, data){
if(!err)
{
res.send(data);;
}
else
{
res.send("index.html not found");
}
});
});

因此我将我的 js 和 css - 数据放到 public - 文件夹中。每次尝试连接时,我都会下载 index.html 文件。有没有人有使用 express 的简单网络服务器的工作示例?我是否必须使用文件阅读器...我认为还有另一种使用 express-middleware 的方法。

我只需要一个支持 css 和 js 的快速网络服务器的简单示例......我找不到任何基本的东西。

最佳答案

app.get('/') 只会响应根目录下的请求,除此之外不会响应任何请求。您的 css 和其他 Assets 位于/css/bootstrap.min.css,您的路线无法处理。

但对于 express,请使用 static 中间件为您完成所有这些工作。 http://expressjs.com/api.html#middleware

本文还介绍了设置 http://blog.modulus.io/nodejs-and-express-static-content

更新:示例应用

Express 能够生成支持静态的示例应用程序,并可选择支持 CSS 预处理器。阅读他们的指南:http://expressjs.com/guide.html但基本步骤是全局安装 express

npm install -g express

然后使用命令行生成你的app的框架

express --css stylus myapp

上面提供了对 Stylus 的支持。如果您愿意,可以指定更少。或者在支持基本 css 文件的情况下生成它

express myapp

然后 cd 进入 myapp,或者你提供的任何名称,你可以看到它是如何完成的。

关于node.js - nodejs express css 和 js 未加载,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22253879/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com