我正在使用API在比特币地址中取得平衡。
我的代码是:
async function getWalletBalance(address) {
try {
const response = await got(`blockchain.info/balance?active=${address}`)
return response.body.address.final_balance
} catch(err) {
return err
}
}
返回的JSON是:
{
"3D2oetdNuZUqQHPJmcMDDHYoqkyNVsFk9r": {
"final_balance": 15392048444281,
"n_tx": 3938,
"total_received": 138450271881712
}
}
但是当我尝试阅读最终的平衡时,它给了我未定义的。我该如何解决这个问题?
答案 0 :(得分:2)
response.body.address.final_balance
正在寻找文字键address
,而不是在您的示例中查找键3D2oetdNuZUqQHPJmcMDDHYoqkyNVsFk9r
。
使用response.body[address].final_balance
代替应解决您的问题。
下面的代码段略有修改(并且没有调用来获得真实的回复),但是应该完成这项工作。
function getWalletBalance(address) {
try {
const body = {
"3D2oetdNuZUqQHPJmcMDDHYoqkyNVsFk9r": {
"final_balance": 15392048444281,
"n_tx": 3938,
"total_received": 138450271881712
}
};
console.log('using body[address]:', body[address].final_balance);
} catch(err) {
return err
}
}
getWalletBalance("3D2oetdNuZUqQHPJmcMDDHYoqkyNVsFk9r");