API 调用在本地有效,但在部署到 heroku 或 zeit 时失败

API call works locally, but fails when deployed to heroku or zeit

HTTP GET 调用在本地运行良好,但在将应用程序部署到 heroku 或 zeit 时失败。

代码如下:

const searchUrl = "https:/hn.algolia.com/api/v1/search?query=" + searchTerm;
    axios({
      method: "get",
      url: searchUrl,
      responseType: "json"
    })

我正在打电话给 Hackernews API。但是当我在 heroku 中加载应用程序时打开网络选项卡时,我看到它正在调用 https://evening-chamber-42563.herokuapp.com/hn.algolia.com/api/v1/search?query=(实际的 url 应该是 https://hn.algolia.com/api/v1/search?query=),不知何故它正在插入 evening-chamber-42563.herokuapp.com/ 在我指定的实际 URL 之间。

我认为这可能是 heroku 的问题,并在 zeit 上部署了我的应用程序以查看它是否解决了问题。又是同样的事情。这次它向 https://hackernews-clone-bgbmdyblch.now.sh/hn.algolia.com/api/v1/search?query= 发出请求(hackernews-clone-bgbmdyblch.now.sh 是我的应用程序部署的位置)。

我尝试使用本机提取和 axios 库。还是一样的问题。

google 小时的搜索对我没有帮助,所以我将其张贴在这里。任何帮助表示赞赏。谢谢。

原来 URL 中有一个拼写错误(协议后缺少一个“/”)。改正后效果很好

当我使用不正确的 URL(缺少“/”)在我的本地主机中调用 fetch 时,浏览器为我更正了它。但是当应用程序部署在云平台上时,它会产生问题。