gpt4 book ai didi

javascript - 如何指向 Node 服务器以提供索引文件 1 路径?

转载 作者:搜寻专家 更新时间:2023-11-01 00:12:33 25 4
gpt4 key购买 nike

这是我的文件夹结构:

我在 src 文件夹中拥有所有内容,src/index.html 也是我要指出的。我的 Node 服务器文件在 src/server/server.js

enter image description here

当我运行正确的 node src/server/server 命令时,出现以下错误:

const express = require('express');

const app = express();

app.get('/', (req, res) => {
res.sendFile('index.html', { root: __dirname });
});

app.get('/category', (req, res) => {
res.end('Categories');
});

app.listen(8999, (res) => {
console.log(res);
});

Error: ENOENT: no such file or directory, stat '/Users/leongaban/Projects/CompanyName/appName/src/server/index.html'

所以错误消息告诉我我需要再往上移动 1 个文件夹,所以想出如下内容:

app.get('/', (req, res) => {
res.sendFile('../index.html', { root: __dirname });
});

但是现在我得到一个禁止的错误:

ForbiddenError: Forbidden

最佳答案

你得到一个 Forbidden 错误的原因是因为 Node.js 发现相对路径 ../ 是恶意的(例如,如果你得到一个基于用户输入的文件,他可能会尝试访问您不希望他访问的文件系统上的文件)。

所以你应该使用 path this 中指出的模块问题

您的代码应使用如下路径:

var path = require('path');
res.sendFile(path.resolve(__dirname + '../index.html'));

关于javascript - 如何指向 Node 服务器以提供索引文件 1 路径?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42447360/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com