为什么在heroku部署中出现“内部服务器错误”?

时间:2020-01-21 14:05:39

标签: javascript node.js express heroku ejs

我刚刚在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);
    });
});

0 个答案:

没有答案