gpt4 book ai didi

node.js - 从nodejs中的文件中读取并显示它

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

当我在本地运行我的 nodejs 代码时,它工作正常。我得到了想要的输出。

我的代码:

var fs = require("fs");
fs.readFile("index.html", function (err, data) {
if (err) throw err;
console.log(data.toString());
});

在本地运行时

enter image description here

  • index.html 包含“Hello World from index.html”并且位于同一目录中。

问题:
当我尝试在 heroku 上部署 web.js(包含与上面相同的代码)时,它似乎不起作用。
当我在 heroku 上部署它时,我希望显示“Hello World from index.html”。

执行以下命令 enter image description here

git push heroku master之后

enter image description here

这是 heroku URL 显示的 enter image description here

背景:我使用的是 AWS Ubuntu 12.04,我的 github 存储库是 this其中包含所需的 web.js 文件。我正在使用 Cygwin。

可能出了什么问题。我是 nodejs 的新手,所以我想我在这里遗漏了一些非常基本的东西。如果您是专家,请友善地回答这个愚蠢的问题。我真的花了整整一夜试图弄明白。当部署在 Heroku 上时,我只想从 index.html 文件中读取并在“http://nameless-headland-9348.herokuapp.com/”上显示它包含的文本。

最佳答案

您正在尝试引用文件 index.html 并使用相对路径。这可能不适用于 heroku,它会尝试从其他地方加载文件。

所以你想要的是相对于你的 app.js 加载它是:

fs.readFile(path.join(process.cwd(), 'index.html'), function(err, data) {

它所做的一切(您的代码)都是控制台记录您的东西。虽然没有 http 服务器和任何东西,但您正试图通过浏览器访问它。没有任何服务器作为响应。

请阅读此答案,以了解如何通过 http: Nodejs send file in response 发送文件

关于node.js - 从nodejs中的文件中读取并显示它,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17590991/

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