0

これは、COINBASE API を使用して認証が成功した後にアクセス トークンを要求するためのコードです。

router.get('/auth/coinbase/token', function (req, res) {
  var body = {
    "grant_type": "authorization_code",
    "code": req.query.code,
    "client_id": process.env.COINBASE_CLIENT_ID,
    "client_secret": process.env.COINBASE_CLIENT_SECRET,
    "redirect_uri": process.env.COINBASE_CALLBACK_URL
  };

  console.log(body);
  request.post({
    url: 'https://api.coinbase.com/oauth/token',
    headers: {
      'Content-Type': 'application/json'
    },
    json: {
      "grant_type": "authorization_code",
      "code": req.query.code,
      "client_id": process.env.COINBASE_CLIENT_ID,
      "client_secret": process.env.COINBASE_CLIENT_SECRET,
      "redirect_uri": process.env.COINBASE_CALLBACK_URL
    }
  }, function (error, response, body) {
    console.log('error:', error); // Print the error if one occurred and handle it
    console.log('statusCode:', response && response.statusCode); // Print the response status code if a response was received
    res.send(body)
  });
});

しかし、投稿リクエストを送信すると、このエラーが発生します

{error: "invalid_grant", error_description: "提供された承認付与が無効であるか、有効期限が切れているか、または別のクライアントに発行されました。"}

この問題を解決するのを手伝ってください。ありがとう

4

0 に答える 0