Node + express - 无法在明显正确的路径中找到我的javascript文件

时间:2017-08-18 14:15:24

标签: node.js express path

我使用express.static来定义我的文件的“根”,但它似乎没有任何效果。服务器脚本是这样的:

var express = require('express');
var app = express();
server = require('http').createServer(app);
app.use(express.static(__dirname + 'js/View'));
server.listen(port);
console.log("Server listening on port " + port);
app.get('/',(req,res) => {
  res.sendFile(__dirname + '/js/View/output.html');
});

在浏览器中,output.html按预期呈现,但此脚本等静态文件无法加载。

<script type="text/javascript" src="js/wsBodyFrames.js"></script>

但服务器回答404错误。为什么路径无效?

1 个答案:

答案 0 :(得分:1)

__dirname并不以斜线结尾;请改为加入path.join

'use strict';

var express = require('express');
var path = require('path');

var app = express();
app.use(express.static(path.join(__dirname, 'js/View')));

app.get('/', (req, res) => {
  res.sendFile(path.join(__dirname, 'js/View/output.html'));
});

var server = require('http').createServer(app);
server.listen(port);
console.log("Server listening on port " + port);