app.get 不工作
app.get is not working
我的后端正在为我包含在其中的其他文件工作,但这些新文件位于目录中名为 js 的文件夹中。这些是文件夹中唯一的文件,它们没有加载,我不确定为什么。我假设这只是一个语法错误,但一个小时后仍无法弄清楚。
在我的 html 上,我有以下代码:
<script type="text/javascript" src="js/jquery-1.10.2.min.js"></script>
<script type="text/javascript" src="js/TweenMax.min.js"></script>
<script type="text/javascript" src="js/cooltext.animations.js"></script>
<script type="text/javascript" src="js/cooltext.min.js"></script>
在我的 app.js 中,我使用了以下代码:
app.get('/js/jquery-1.10.2.min.js', function (req, res) {
res.sendFile(__dirName + '/js/jquery-1.10.2.min.js');
});
app.get('/js/TweenMax.min.js', function (req, res) {
res.sendFile(__dirName + '/js/TweenMax.min.js');
});
app.get('/js/cooltext.animations.js', function (req, res) {
res.sendFile(__dirName + '/js/cooltext.animations.js');
});
app.get('/js/cooltext.min.js', function (req, res) {
res.sendFile(__dirName + '/js/cooltext.min.js');
});
我明白了。我必须使用:
app.use(express.static('js'));
并从 index.html 中的链接中删除 'js'。
引用自 Express 文档:http://expressjs.com/starter/static-files.html
在 Express 中提供静态文件
服务文件,例如图像、CSS、JavaScript 和其他静态文件是在 Express 中的内置中间件的帮助下完成的 - express.static.
将要标记为静态资产位置的目录名称传递给express.static 中间件,以直接开始提供文件服务。例如,如果您将图像、CSS 和 JavaScript 文件保存在名为 public 的目录中,您可以这样做:
app.use(express.static('public'));
现在,您将能够加载 public 目录下的文件:
http://localhost:3000/images/kitten.jpg
http://localhost:3000/css/style.css
http://localhost:3000/js/app.js
http://localhost:3000/images/bg.png
http://localhost:3000/hello.html
我的后端正在为我包含在其中的其他文件工作,但这些新文件位于目录中名为 js 的文件夹中。这些是文件夹中唯一的文件,它们没有加载,我不确定为什么。我假设这只是一个语法错误,但一个小时后仍无法弄清楚。
在我的 html 上,我有以下代码:
<script type="text/javascript" src="js/jquery-1.10.2.min.js"></script>
<script type="text/javascript" src="js/TweenMax.min.js"></script>
<script type="text/javascript" src="js/cooltext.animations.js"></script>
<script type="text/javascript" src="js/cooltext.min.js"></script>
在我的 app.js 中,我使用了以下代码:
app.get('/js/jquery-1.10.2.min.js', function (req, res) {
res.sendFile(__dirName + '/js/jquery-1.10.2.min.js');
});
app.get('/js/TweenMax.min.js', function (req, res) {
res.sendFile(__dirName + '/js/TweenMax.min.js');
});
app.get('/js/cooltext.animations.js', function (req, res) {
res.sendFile(__dirName + '/js/cooltext.animations.js');
});
app.get('/js/cooltext.min.js', function (req, res) {
res.sendFile(__dirName + '/js/cooltext.min.js');
});
我明白了。我必须使用:
app.use(express.static('js'));
并从 index.html 中的链接中删除 'js'。
引用自 Express 文档:http://expressjs.com/starter/static-files.html
在 Express 中提供静态文件
服务文件,例如图像、CSS、JavaScript 和其他静态文件是在 Express 中的内置中间件的帮助下完成的 - express.static.
将要标记为静态资产位置的目录名称传递给express.static 中间件,以直接开始提供文件服务。例如,如果您将图像、CSS 和 JavaScript 文件保存在名为 public 的目录中,您可以这样做:
app.use(express.static('public'));
现在,您将能够加载 public 目录下的文件:
http://localhost:3000/images/kitten.jpg
http://localhost:3000/css/style.css
http://localhost:3000/js/app.js
http://localhost:3000/images/bg.png
http://localhost:3000/hello.html