如何将前端连接到heroku上的json数据



我正试图在Heroku上部署我的第一个React应用程序。我在后台使用了简单的json文件。

在本地,一切运行良好:我的服务器位于localhost:8080上,前端axios调用从中获取数据,如下所示:

axios.get(localhost:8080/bench).then( (response) => {
// my logic here
})

我的部署流程是:

  • 运行npm build,并将构建文件夹中的所有内容放入服务器端的公用文件夹中。这是入口点文件:

const path = require("path");
const publicPath = path.join(__dirname, "public");
console.log(publicPath);
app.use(express.static(publicPath));
app.get("*", (req, res) => {
res.sendFile(path.join(publicPath, "index.html"));
});
  • 推送构建工件到Heroku

这样做,从前端部分到Heroku的一切都很好。

我担心的是我不知道我应该用什么axios调用前端来从服务器获取数据我缺少什么吗?

Localhost仅适用于您的机器。在您的前端,您需要更改axios url以指向您部署的服务器的url,如下所示:

axios.get(`${YOUR_HEROKU_URL}`/bench)

最新更新