我已经配置了express,如下所示:
var express = require('express');
var app = express();
app.get('/', function(req, res) {
res.sendfile(__dirname + '/3in1/src/index.html');
});
app.get('/index.html', function(req, res) {
res.sendfile(__dirname + '/3in1/src/index.html');
});
/* serves all the static files */
app.use(express.static(__dirname + '/3in1/src/'));
var port = process.env.PORT || 80;
app.listen(port, function() {
console.log("Listening on " + port);
});
我的css在该文件夹下的文件中
/3in1/src/css/
所有这些都可以使浏览器正常运行。问题是当对我的javascript文件发出请求时,这些文件位于整个以下文件夹中,如下所示:
/3in1/bower_components/library-name/library.js
/3in1/bower_components/library-two/library_two.js
etc...
etc..
etc.
问题是我得到了404。索引中的链接看起来像这样:
<script type="text/javascript" src="../bower_components/PreloadJS/lib/preloadjs-0.4.1.combined.js"></script>
<script type="text/javascript" src="../bower_components/jquery/dist/jquery.js"></script>
<script type="text/javascript" src="../bower_components/jquery-mousewheel/jquery.mousewheel.js"></script>
我究竟做错了什么?我以为它可以识别我正在使用的相对路径,即“ ../”,但是我想我错了!正确的方法是什么?
这个简单示例的解决方案是仅添加以下代码行:
app.use('/bower_components', express.static(__dirname + '/3in1/bower_components/'));
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句