如何在JS函数中输出Flutterwave汇率API的等价货币JSON数据
解决方案
你可以从API响应的data字段中提取汇率、源货币和目标货币的金额信息,构造并输出符合需求的JSON数据。同时优化代码结构,使用async/await替代.then()链提升可读性,并添加错误处理逻辑:
const GetEqCurrency = async (source_currency, destination_currency, amount) => { const headers = { Accept: "application/json", "Content-Type": "application/json", Authorization: "Bearer FLWSECK_TEST-153740d351951b5f6d5ae8b903e0c467-X", }; const url = `https://api.flutterwave.com/v3/transfers/rates?amount=${amount}&destination_currency=${destination_currency}&source_currency=${source_currency}`; try { const response = await fetch(url, { method: "GET", headers }); const responseJson = await response.json(); if (responseJson.message === "Transfer amount fetched") { // 构造等价货币数据 const equivalentData = { exchange_rate: responseJson.data.rate, source: { currency: responseJson.data.source.currency, amount: responseJson.data.source.amount }, destination: { currency: responseJson.data.destination.currency, amount: responseJson.data.destination.amount } }; // 输出格式化后的JSON console.log(JSON.stringify(equivalentData, null, 2)); // 返回数据供调用者使用 return equivalentData; } else { console.error("API请求失败:", responseJson.message); return null; } } catch (error) { console.error("请求出错:", error); return null; } };
关键说明:
- 数据提取:从
responseJson.data中获取汇率、源货币和目标货币的详细信息,组织成清晰的JSON结构 - 格式化输出:使用
JSON.stringify(equivalentData, null, 2)生成带缩进的易读JSON字符串 - 错误处理:添加
try/catch块捕获网络请求或JSON解析异常,同时处理API返回的失败状态 - 返回值:函数返回构造好的等价货币数据,方便调用者后续业务逻辑处理
调用示例:
// 调用函数获取KES转USD的等价金额 GetEqCurrency("KES", "USD", 1000) .then(result => { if (result) { // 在这里处理返回的等价货币数据 console.log("转换结果:", result); } });
内容的提问来源于stack exchange,提问作者Pamela
相关产品推荐
相关产品推荐

