API无法获取信息

时间:2019-07-13 17:49:35

标签: php api curl hash cryptocurrency

我正在尝试构建一个在Bittrex上交易加密货币的机器人。 我已经弄清楚了逻辑,但是在API方面苦苦挣扎...

有人可以告诉我以下内容有什么问题吗?

我希望输出为余额> 0的每个硬币的数组,其中该数组列出了API文档中“获取余额”部分中的所有详细信息

$apikey = "123456789";
$apisecret = "abcdefghi";
$nonce=time();
$uri='https://bittrex.com/api/v1.1/market/getbalances?apikey='.$apikey.'&nonce='.$nonce;
$sign=hash_hmac('SHA512',$uri,$apisecret);
$ch = curl_init($uri);
curl_setopt($ch, CURLOPT_HTTPHEADER, array('apisign:'.$sign));
$execResult = curl_exec($ch);
$obj = json_decode($execResult, true);

我尝试回显$ obj,$ obj ['Result'],$ obj ['Result'] ['Currency'],但是除了空白的白纸外,我什么也没得到……

2 个答案:

答案 0 :(得分:1)

curl_exec返回一个布尔值。为了使此功能按预期工作,必须设置CURLOPT_RETURNTRANSFER选项。

$ch = curl_init($uri);
curl_setopt($ch, CURLOPT_HTTPHEADER, array('apisign:'.$sign));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$execResult = curl_exec($ch);
if ($execResult === FALSE) {
  echo "An error ocurred";
  die;
}
$obj = json_decode($execResult, true);

答案 1 :(得分:0)

已: $ uri ='https://bittrex.com/api/v1.1/market/getbalances?apikey='。$ apikey。'&nonce ='。$ nonce;

需要: $ uri ='https://bittrex.com/api/v1.1/account/getbalances?apikey='。$ apikey。'&nonce ='。$ nonce;

也丢失了: curl_setopt($ ch,CURLOPT_RETURNTRANSFER,true);

感谢味精和Grimbo!