从 axios 获取 object 数组并使用 return 值调用另一个 axios 函数并将输出附加到第一个结果

Get object array from axios and using return value call another axios function and append the output to first result

const 请求 = { headers:{ "接受": "申请", "Content-Type": "application/json", }, 方法:“获取”, url: '', } 一样;

        const result = await axios(request);

        result.data.data.map(async (ad: any) => {
            const request2 = {
                headers: {
                    "Accept": "application",
                    "Content-Type": "application/json",
                },
                method: "GET",
                url: '',
            } as any;

            const result2 = await axios(request2);
            ad.preview = result2.data.data[0].body;
        })

        return result.data.data;

未附加预览密钥

问题是 return 语句在异步映射回调完成之前运行。由于您实际上并没有 returning 地图中的任何内容,因此使用它并没有多大意义。只需使用 for..of 循环:

const result = await axios(request);

for (const ad of result.data.data) {
  const request2 = {...}
  const result2 = await axios(request2);
  ad.preview = result2.data.data[0].body;
}

return result.data.data;