gpt4 book ai didi

javascript - 如何根据第一次响应进行第二次 API 调用?

转载 作者:行者123 更新时间:2023-11-30 07:01:38 28 4
gpt4 key购买 nike

我需要调用 2 个 API 来在我的组件上显示数据,但第二个 API 需要来自第一个 API 响应的 header 。我正在使用 react 钩子(Hook)。我更新了第一个响应的状态,以便稍后可以将其用于第二次调用,但它未定义。我做错了什么?

P.s 执行此调用的更好方法(可能使用 async/await)将非常适用

 const [casesHeaderFields, setCasesHeaderFields] = useState([]);
const [casesFields, setCasesFields] = useState([]);

useEffect(() => {
const fetchData = () => {
const result1 = axios
.get(`firstUrl`)
.then(response => {
//I need this as headers for my second API
setCasesHeaderFields(
response.data.result.fields
);
});

const result2 = axios
.get(`url${casesHeaderFields} //here i want to pass params from
//first response)
.then(response => {
setCasesFields(response.data.result.record_set);
});
};
fetchData();
}, []);

最佳答案

您可以将结果链接起来,因为它们是常规 promise : Ref

axios.get(...)
.then((response) => {
return axios.get(...); // using response.data
})
.then((response) => {
console.log('Response', response);
});

关于javascript - 如何根据第一次响应进行第二次 API 调用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57376297/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com