Согласно документации Bitstamp API здесь https://www.bitstamp.net/api/ следующий код Python может использоваться для генерации подписи SHA256:
import hmac
import hashlib
message = nonce + customer_id + api_key
signature = hmac.new(
API_SECRET,
msg=message,
digestmod=hashlib.sha256
).hexdigest().upper()
Я пытаюсь использовать Laravel / PHP с GuzzleHttpКлиент должен сделать то же самое.Мой код:
$client = new \GuzzleHttp\Client();
$nonce = time();
$message = $nonce . $bitstamp_customer_id . $bitstamp_api_key;
$signature = strtoupper(hash_hmac("sha256", $message, $bitstamp_api_secret));
$response = $client->request('POST', 'https://www.bitstamp.net/api/v2/balance/', [
'form_params' => [
'key' => $bitstamp_api_key,
'signature' => $signature,
'nonce' => $nonce,
]
]);
Независимо от того, что я пытаюсь получить, я получаю:
Client error:
POST https://www.bitstamp.net/api/v2/balance/resulted в
403 Ошибка аутентификации response: {"status": "error", "reason": "API key not found", "code": "API0001"}
Я проверил три критических параметра Bitstamp и несколько раз пересоздал ключ API.У меня есть три параметра, которые я проверял:
- bitstamp_customer_id
- bitstamp_api_key
- bitstamp_api_secret
Я заканчиваю, что янеправильно переводит код Python и нуждается в некоторой помощи.