[英]js function calling an api doesn't respond with expected values
我正在尝试使用其 API 从加密货币交易所收集所有市场对,但我不确定如何在 JSON 对象中选择正确的行,因为它似乎不起作用。
api: https : //ftx.com/api/markets
我的代码:requests.js
import axios from 'axios';
import parsers from './parsers';
async function ftxMarkets() {
const ftxResponse = await axios.get('https://ftx.com/api/markets');
return parsers.ftxMarkets(ftxResponse.data);
}
解析器.js
function ftxMarkets(data) {
const [ftxMarketPairs] = data;
let ftxPairs = data.map(d => d.name );
console.log(ftxPairs);
};
我不确定 parsers.js 文件中的d.name
,但我尝试使用相同的代码进行另一个交换,只更改那部分并且它起作用了,所以我想这就是问题的来源,虽然不可能当然,我不知道用什么来代替它。
谢谢
我运行了 api 调用,在查看响应后,我看到了一个包含所有加密数据列表的结果键。 所以我猜如果你用这样的结果对象调用解析器它会工作
return parsers.ftxMarkets(ftxResponse.result);
// try parsers.ftxMarkets(ftxResponse.data.result) if the above one doesnt work
然后在解析器中它应该正常工作
function ftxMarkets(data) {
let ftxPairs = data.map(d => d.name );
console.log(ftxPairs);
};
更新:
由于 fxtResponse.data.result 有效。 您的问题应该是 CORS 问题,有两个选项可以解决。
对于 2 如果您已经有一个 nodeJs 服务器。 您可以使用 CORs Npm 包并从服务器调用第三方 api,并将请求提供给启用 CORS 的前端。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.