【发布时间】:2023-03-10 12:45:01
【问题描述】:
我有以下代码:
var urlKraken1 = "https://api.kraken.com/0/public/OHLC?pair=XBTUSD&interval=1";
request({
url: urlKraken1,
json: true
}, function (error, response, body) {
if (!error && response.statusCode === 200) {
var valuesArray = [];
var cur = body.result.XXBTZUSD.length -1;
var time = body.result.XXBTZUSD[cur][0];
var high = body.result.XXBTZUSD[cur][2];
var low = body.result.XXBTZUSD[cur][3];
var open = body.result.XXBTZUSD[cur][1];
var close = body.result.XXBTZUSD[cur][4];
var volume = body.result.XXBTZUSD[cur][6];
var Currency1 = "BTC";
var Currency2 = "USD";
valuesArray.push([time, "kraken.com", Currency1, Currency2, high, low, open, close, volume]);
writeMultiRows("kraken.com", Currency1, valuesArray);
}
但在我的数据库中,我得到的值与 API 中的值不正确。 我收到的数据例如:
time = 1499280240
high = 2609.001
low = 2608.666
open = 2609.001
close = 2608.666
volume= 12.42484963
但我应该收到:
time = 1499280240
high = 2610.000
low = 2605.022
open = 2609.001
close = 2610.000
volume= 15.42483298
提前感谢您的各种提示和帮助!
【问题讨论】:
-
检查浏览器开发者工具网络选项卡中的请求 - 来自服务器的数据是否正确?如果不是,那么客户端代码(您显示的唯一代码)不是问题
-
看起来你现在应该得到 -
1499319720,"2594.179","2594.179","2594.179","2594.179","2594.179","0.10000000",1你想要最后一个还是倒数第二个值? - 对于倒数第二个值,使用var cur = body.result.XXBTZUSD.length - 2
标签: javascript arrays json api