CODE:
app.js
//Static Folder
app.use(express.static(path.join(__dirname, "/public")));
SECTION1 / index.ejs
<script src="/public/js/firebase.js"></script>
<script src="/public/js/angular.js"></script>
<script src="/public/js/angularfire.js"></script>
<script src="/public/js/jquery-3.1.1.min.js"></script>
问题:
加载section1 / index.ejs时所有这些文件的错误404
缺少什么?我犯了什么错误?
答案 0 :(得分:4)
您需要将第一个参数传递给app.use
,这将是公共路径。
app.use('/', express.static(__dirname + '/public'));
然后在客户端:
<script src="/js/firebase.js"></script>
您也可以使用/public
代替/
。
答案 1 :(得分:0)
尝试使用:
app.use('/public',express.static(path.join(__dirname,'/public')));
我认为如果您想将其用作没有虚拟路径的中间件,您应该像这样使用它:
app.use(express.static('public'));
如果没有定义整个路径,Express会自动为您获取该文件夹。