节点表达有问题 API

Having trouble with the node express API

我试过 this 关于如何设置本地主机的教程,有些代码有效,有些则无效。但目前我收到了奇怪的体验:

在下面 res.sendfile 的代码中,重要的是要提到终端将此命令注释为已弃用。

使用 res.sendFile 但是会出现 错误。

我试过使用 .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 而不是错误。

您可以使用__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 系统中斜线正确。