我正在尝试使用oauth应用coinbase钱包API来使用其发送功能。我已经能够连接到API并使用其端点,但每当我尝试使用发送功能时,我都会抛出错误Invalid amount for meta[send_limit_amount]
。我的omniauth初始化器看起来像这样:
provider :coinbase, , ENV['CLIENT_ID'], ENV['CLIENT_SECRET'],
scope: 'wallet:user:read wallet:user:email wallet:accounts:read wallet:transactions:send'
出现此错误的原因是,为了使用发送功能,coinbase需要额外的参数meta[send_limit_amount]
。我应该在哪里以及如何应用这个额外的范围?
更新:所以我已经取得了一些进展,因为我能够将一个元范围附加到我的初始化程序,这似乎是坚持(如我打印出auth_info时所示)。这是我的初始化程序的当前状态:
Rails.application.config.middleware.use OmniAuth::Builder do
provider :coinbase, ENV['CLIENT_ID'], ENV['CLIENT_SECRET'], scope: 'wallet:user:read wallet:user:email wallet:accounts:read ', :meta => {'send_limit_currency' => 'BTC'}
end
# wallet:transactions:send
# :meta => {'send_limit_amount' => '0.0001'}
现在的问题是我似乎无法确定将send_limit_amount
属性添加到oauth元哈希所需的语法。
答案 0 :(得分:0)
管理以使用以下初始化程序解决问题;
Rails.application.config.middleware.use OmniAuth::Builder do
provider :coinbase, ENV['CLIENT_ID'], ENV['CLIENT_SECRET'],
scope: 'wallet:user:read wallet:user:email wallet:accounts:read wallet:transactions:send',
:meta => {'send_limit_amount' => 1}
end
现在,我需要禁用双因素身份验证或确定如何Re-play the request with CB-2FA-Token header