首页 > 解决方案 > 为什么 Heroku 部署会出现“内部服务器错误”?

问题描述

我刚刚使用 Heroku 部署了一个小型天气应用程序项目,当用户输入无效的城市或邮政编码时,我收到了内部服务器错误。如果发生这种情况,我在我的路由中添加了一个 .catch 以呈现错误页面,它在我的本地版本中完全按照预期工作,但在部署的版本上却没有。有谁知道这可能是为什么?我正在使用 .ejs 模板来呈现我的页面。

app.get("/results_city", (req, res) => {
  let query = req.query.search;
  console.log("Search params:", query);
  let weatherApiKey = process.env.WEATHER_API_KEY;
  let weatherUrl =
    "https://api.openweathermap.org/data/2.5/weather?q=" +
    query +
    "&appid=" +
    weatherApiKey;
  rp(weatherUrl)
    .then((body) => {
      let data = JSON.parse(body);
      res.render("results", { data: data });
      console.log(data);
      })
    .catch(err => {
      if (err) {
        res.render("Error")
        return;
      }
      console.log(err);
    });
});

标签: javascriptnode.jsexpressherokuejs

解决方案


推荐阅读