2016-10-09 3 views
0

Я создал API вызова объекта, когда я установил только "info" в качестве параметра программы программы без каких-либо ошибок. Когда я установил такой параметр («swapList», $ t), я получаю {"error":407,"errorMsg":"Invalid value: currency","time":1476023664,"limit":{"used":5,"allowed":600,"expires":1476024000}}. Я попробовал множество массивов, но результаты остались прежними. Вот API документация https://github.com/bitmarket-net/apiНеверные параметры API

Вот мой код

<html> 
<body> 
<?php 
class API 
{ 
public function bitmarket_api($method, $params = array()) 
{ 
    $key = "XXXXXXXXXXXXXXXXXXXXX"; 
    $secret = "XXXXXXXXXXXXXXXXXXXX"; 

    $params["method"] = $method; 
    $params["tonce"] = time(); 

    $post = http_build_query($params, "", "&"); 
    $sign = hash_hmac("sha512", $post, $secret); 
    $headers = array(
     "API-Key: " . $key, 
     "API-Hash: ". $sign, 
    ); 

    $curl = curl_init(); 
    curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); 
    curl_setopt($curl, CURLOPT_URL, "https://www.bitmarket.pl/api2/"); 
    curl_setopt($curl, CURLOPT_POST, true); 
    curl_setopt($curl, CURLOPT_POSTFIELDS, $post); 
    curl_setopt($curl, CURLOPT_HTTPHEADER, $headers); 
    $ret = curl_exec($curl); 
    if ($ret === false) 
    { 
    die(curl_error($curl)); 
    } 
    echo $ret; 
} 
} 

$t[]='BTC'; 
$z =new API; 
$z->bitmarket_api('swapList',$t); 

?> 
</body> 
</html> 

ответ

0

Вы передаете массив параметров без имени ключа.

Попробуйте с:

$t['currency'] = 'BTC'; 
+0

Спасибо много это работает :) – Jane

+0

Рад помочь, и добро пожаловать к переполнению стека. Если этот ответ решит вашу проблему, отметьте его как принятый. – devneri