Я пытаюсь отправлять сатоши на электронную почту через php с помощью coinbase api, но у меня это не работает. Я видел этот код в сети. Я получаю такую ошибку:
{"errors": [{"id": "authentication_error", "message": "invalid signature"}]}
Я прикрепил php-код, который у меня есть на моем сайте
<?php
$timestamp = time();
$method = 'POST';
$request_path = '/v2/accounts/34en86m3-b0qa-5022-a45c-b110z38631k6/transactions';
$body = 'type=send&[email protected]&amount=0.00002504¤cy=BTC';
$account_id = '34en86m3-b0qa-5022-a45c-b110z38631k6';
$hash_input = $timestamp.''.$method.''.$request_path.''.$body;
$apiSecret = 'VmQruPgmAYsW6Pq1vsC5bnzObd5LpTIn';
$signature = hash_hmac('sha256', $hash_input, $apiSecret, true);
$accesskey = '1XJZLVA1F4zjQ9cO';
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://api.coinbase.com/v2/accounts/'.$account_id.'/transactions');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'POST');
$headers = array();
$headers[] = 'Cb-Access-Key: '.$accesskey;
$headers[] = 'Cb-Access-Sign: '.$signature;
$headers[] = 'Cb-Access-Timestamp: '.$timestamp;
$headers[] = 'Cb-version: 2017-08-07';
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
$result = curl_exec($ch);
if (curl_errno($ch)) {
echo 'Error:' . curl_error($ch);
}
else
{
echo $result;
}
curl_close ($ch);
?>
Примечание: ключевые и секретные коды, размещенные в коде, придуманы, но на моем сайте у меня есть оригиналы.
invalid signature
Похоже, ошибка подсказала вам, что здесь не так. Вам нужно будет связаться со службой поддержки API, чтобы узнать, почему ваши учетные данные не работают. - person Machavity♦   schedule 18.05.2018This is likely to be the result of your time being for the generation of your timestamp. Keep in mind the time must be within 30 seconds of the API service time. In my experience, that is often caused by invalid API keys.
Но я не очень хорошо понимаю, что вы имеете в виду ... - person juansanchez1993   schedule 18.05.2018