如何发出服务器端 API 请求?

How to make server-side API requests?

我正在使用 javascript(React) 创建一个使用多个 APIs(Spotify、Twitch、Youtube)的网络应用程序,到目前为止我一直在使用 Axios制作 REST 调用成功。但是现在我已经开始 运行 进入跨源资源共享 (CORS) 错误,我被告知 我需要从服务器而不是我的客户端调用外部 APIs。我从未从服务器进行过 API 调用,并且 有一些问题:

  1. 目前我所做的一切都是 运行 在本地使用 Node 并且我没有 "server" 除非那是 Node 算作的东西。我需要 "server" 吗?
  2. 我是否应该创建自己的 API 并将其托管在某个服务器上,以便我可以从我的 javascript 代码中调用它 API?
  3. 如果这是我应该做的,我该如何创建自己的 API?
  4. 是否需要使用其他语言来进行服务器端 api 调用?

Everything I am doing is currently running locally using Node and I dont have a "server" unless that's what Node counts as. Do I need to get a "server"?

React 附带了一堆使用 Node 的开发工具,包括一个开发服务器。它不是为生产用途而设计的,因此您不应该将其用于生产用途。

Should I be creating my own API and hosting it on some server so that I can call that API from my javascript code?

是的。

How do I create my own API if that's what I should be doing?

编写一些代码来接受 HTTP 请求,获取您想要响应的数据,并进行 HTTP 响应。

Express.js 是在 Node.js 中执行此操作的流行方式。您可以将它与 Next.js 结合使用,为您的 React 应用程序应用 server-side 渲染(带来更好的性能、可访问性、可靠性和 SEO)。

Is there a different language I will need to use to make server-side api calls?

您可以使用您喜欢的任何语言编写 server-side 代码。

  1. 我假设您将应用程序托管在开发 nodeJS 服务器上,因此您 将需要一个额外的服务器。
  2. 是的。创建一个 API 并从您的前端调用它。
  3. 创建一个接受 http 请求并根据路由做你的事情的服务器 chosen.There 有许多关于如何使用例如 nodeJS+Express 在 互联网。
  4. 服务器端使用的语言由您选择。