Node JS没有使用res.sendFile()发送文件

时间:2015-09-24 21:49:58

标签: node.js

enter image description here

我的文件结构如上所示,但我无法找到错误的文件:Undefined不是函数。

设置应用程序路径,我可以通过console.log获取: /用户/ MYNAME /桌面/ myproject的/客户端

例如,如果我导航到localhost:3000,页面将正确呈现。然后我可以点击导航到localhost:3000 / login,一切都还不错。但是,如果我直接转到localhost:3000 / login,即从未加载索引页面,则此路由:'/ *'被命中并发生未定义的错误。没有加载HTML。

我像这样设置应用程序路径:

app.use(express.static(path.join(__dirname, '/client')));
    app.set('appPath', path.join(__dirname, '/client'));

我正在使用Express: “〜4.0.0”

3 个答案:

答案 0 :(得分:1)

尝试以相应的方式设置相对文件路径的根目录:

app.set('base', __dirname);

然后:

app.use(express.static('client'));

请确保不要包含/client两次,这样您就不会在路径中找到.../client/client...之类的内容。

答案 1 :(得分:0)

http://expressjs.com/api.html#res.sendFile

res.sendFile() is supported from Express v4.8.0 onwards

答案 2 :(得分:0)

你很亲密。

app.use(express.static(__dirname + '/client'));

此致