节点Express API遇到问题

时间:2019-07-23 11:31:38

标签: express localhost sendfile

我尝试过this关于如何设置本地主机的教程,有些代码可以工作,有些则不能。但是目前我正在接受有关它的奇怪经验:

res.sendfile的代码下面,重要的是要提及终端已弃用该命令。

使用res.sendFile会产生following错误。

我尝试将.sendFile与绝对路径一起使用,但是没有用:

res.sendFile('localhost:3000/client/index.html');
var app = require('express')();
var http = require('http').Server(app);
var io = require('socket.io')(http);
var port = 3000;

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

我只是试图在server.js和index.html之间建立简单的连接。预期的输出将显示index.html而不是错误。

1 个答案:

答案 0 :(得分:0)

您可以使用__dirname变量来存储当前正在执行的脚本的绝对路径。您可以在sendFile函数中添加此路径。

res.sendFile(__dirname + '/client/index.html');

或者,您可以使用Node.js path模块来加入路径

const path = require('path');
...
...
res.sendFile(path.join(__dirname,'/client/index.html'));

path.join确保在UNIX / Windows系统中使用正确的斜杠。