【问题标题】:401 Unauthorized Response Using Coinbase OAuth API To Send Money401 Unauthorized Response 使用 Coinbase OAuth API 汇款
【发布时间】:2021-05-12 07:00:26
【问题描述】:

标题总结了我的问题。我在 POST 标头中使用了 2FA 的短信代码,得到了 401 Unauthorized Response。根据docs,我应该得到 201 响应。谁能猜出我的 POST 请求中缺少什么?可能是因为我正在本地机器上进行测试吗?顺便说一句,我使用 axios 作为这个 Node.js 项目的 HTTP 客户端。

  config: {
    url: 'https://api.coinbase.com/v2/accounts/1456cc98-dd71-5ae3-8e90-c04d1d87e2b8/transactions',
    method: 'post',
    data: '{"type":"send","to":"3MLCRpMDoC3BFBsaSLNimWfJFvsMVBq4Ac","amount":"0.0000018","currency":"BTC"}',
    headers: {
      Accept: 'application/json, text/plain, */*',
      'Content-Type': 'application/json;charset=utf-8',
      'CB-2FA-TOKEN': '4152880',
      'User-Agent': 'axios/0.21.1',
      'Content-Length': 95
    }, .....

【问题讨论】:

  • @coinbase 为什么会这样。用户已经输入了他们的 2FA 代码,并且必须访问他们的电子邮件来批准设备,这样我们才能访问他们的帐户。现在他们每次发送都必须再次进行 2FA?为什么现在有人会使用coinbase oauth,我正在迁移回密钥,秘密
  • 是的,它有点乏味,尤其是少量。什么是关键秘密?我认为 oauth 是代表某人发送的唯一方式。
  • 直接使用用户可以提供的 API Key & Secret 连接,完全跳过 OAuth 包括审批流程

标签: node.js http coinbase-api


【解决方案1】:

我想通了!

module.exports.replaySendMoney = function replaySendMoney(smsCode){
    // in the future access token will be stored and retrieved from database
    var Client = require('coinbase').Client;
    let accessToken = '2aac7a723eb58bfaf13a9073ac7b6972dca071f14fa0abbc766e9ed9f60be596';
    let refreshToken = '17a609e13c7608ecd499a1be502da18a7096ccf2d5fe9f40fca2b87501f7c233';
    var client = new Client({'accessToken': accessToken, 'refreshToken': refreshToken});
    client.getAccount('BTC', function(err,acct){
                // REQUIRES 2FA
        acct.sendMoney({
            'to': '3MLCRpMDoC3AFBsaSLNimWfJFvsMVBq4Ac',
            'amount': '0.0000018',
            'currency': 'BTC',
            'two_factor_token' : smsCode // MISSING PARAMETER
        }, function(err, txt){
            console.log(err);
            console.log(txt);
            res.render('authPurchase', {});
        });
    });
}

【讨论】:

    猜你喜欢
    • 2020-07-05
    • 1970-01-01
    • 2011-03-11
    • 2021-06-17
    • 2013-07-10
    • 2013-02-22
    • 1970-01-01
    • 2014-08-19
    • 2016-01-19
    相关资源
    最近更新 更多