#php #json #api #backend
#php #json #API #серверная часть
Вопрос:
Я создал 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
Вот мой код
<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, "", "amp;");
$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>
Ответ №1:
Вы передаете массив параметров без имени ключа.
Попробуйте с:
$t['currency'] = 'BTC';
Комментарии:
1. Рад помочь и добро пожаловать в Stack Overflow. Если этот ответ решил вашу проблему, пожалуйста, отметьте его как принятый.