在nodejs中使用res.sendfile()时出错

时间:2017-01-18 15:51:57

标签: node.js npm socket.io

我在nodejs上有项目,在nodejs中是im begginer。 当我尝试使用这个

app.get('/', function(req, res) res.sendfile('index.html');});

它告诉我使用 sendFile (calital F )。 当我在sendFile中使用大写字母F时,它会向我显示此错误

TypeError: path must be absolute or specify root to res.sendFile

在ServerResponse.sendFile

我应该怎么做任何帮助我

3 个答案:

答案 0 :(得分:1)

你可以尝试以sudo身份运行吗?

sudo npm install nodejs

安装节点的更好方法是下载安装程序 https://nodejs.org/en/download/

答案 1 :(得分:0)

您应该在系统中输入文件的确切文件路径。

将其添加到文件顶部:

var path = require('path');

然后:

app.get('/', function(req, res){ 
    console.log(path.join(__dirname, 'index.html')); //See the output in console
    res.sendFile(path.join(__dirname, 'index.html')); //this joins your current directory and filename, giving you the full path to the file.
});

我不知道为什么它不适合你。只写'index.html'通常有效。但这肯定会奏效。

答案 2 :(得分:0)

尝试一下,它对我有用!

        var path = require('path');
        res.sendFile(path.resolve('output.xlsx'));

再见!