如何在javascript中发起多个请求
在 Javascript 中发出 HTTP 请求(API 调用)可以通过多种方式完成,例如使用浏览器原生的 fetch 功能、jQuery$.ajax 、axios 等。
还有一些选项是为 Reactreact-query 等不同的后端和前端框架量身定制的。
使用方法都差不多:
- 你发出一个请求,返回一个 Promise
- 在 Promise 没有结果前不能使用数据
单个 API 的调用
1 | async function getData (){ |
两个 API 的调用
假设,现在需要拿到 2 个 API 的数据,才能执行接下来的工作。
最粗暴的方法是一个接一个的请求,见下面的代码。
1 |
|
这种串行方式一个请求返回结果后,才去请求另外一个,很低效。
使用 Promise.all()并行
2 个请求同时发出,当 2 个请求都返回成功结果的时候,才返回 responses。
1 | async function getData(){ |