PHP Coinbase, как начать использовать этот API, используя язык PHP?

Я пытаюсь использовать PHP Coinbase API. У меня уже есть ключ API и ключ OAuth. Я уже настроил свой веб-сервер. Кроме того, я уже загрузил библиотеку на GitHub, но все еще не могу заставить ее работать.

Каждый раз, когда я использую этот код, он возвращает:

строка (213) «{» error «:» invalid_grant «,» error_description «:» The
если авторизационный грант недействителен, истек, отозван, не
совпадает с URI перенаправления, использованным в запросе авторизации, или был
выдан другому клиенту. «}»

Соответствующий код

$post = [
'grant_type' => 'authorization_code',
'code' => 'xxxxxx',
'client_id'   => 'xxxxx',
'client_secret'   => 'xxxx',
'redirect_uri' => 'https://sample/mybots/blockchain',
];

$ch = curl_init('https://api.coinbase.com/oauth/token');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $post);

// execute!
$response = curl_exec($ch);

// close the connection, release resources used
curl_close($ch);

// do anything you want with your response
var_dump($response)

1

Решение

Первое, что вы должны сделать, это перейти к конечной точке аутентификации и получить код авторизации, после чего вы отправляете его обратно и получаете токен доступа в качестве ответа.

Как правило, запрос должен выглядеть так:

   response_type
REQUIRED.  Value MUST be set to "code".

client_id
REQUIRED.  The client identifier as described in Section 2.2.

redirect_uri
OPTIONAL.  As described in Section 3.1.2.

scope
OPTIONAL.  The scope of the access request as described by
Section 3.3.

state
RECOMMENDED.  An opaque value used by the client to maintain
state between the request and callback.  The authorization
server includes this value when redirecting the user-agent back
to the client.  The parameter SHOULD be used for preventing
cross-site request forgery as described in Section 10.12.

Который вы можете увидеть здесь https://tools.ietf.org/html/rfc6749#section-4.1.1

И действительно, в Coinbase Docs https://developers.coinbase.com/docs/wallet/coinbase-connect/integrating

Вы пропустили этот шаг, и вы пытаетесь начать с шага 3 в документах на основе!

Убедитесь, что клиент настроен правильно на coinbase тоже. и что URL перенаправления совпадает точно.

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]