我无法使用API通过电子邮件地址从一个帐户汇款到另一个帐户进行脱链交易。可能有一个简单的解决方案,但我还没有发现任何对我有用的东西,尽管在这里阅读其他问题,基本上每当我发送API请求汇款时,它都会出现错误401,表示无效签名。
按照developers page上的说明,我正在向API发出POST请求,并使用API密钥对请求进行身份验证。除HMAC sha256签名外,一切似乎都在起作用。
例如,假设我的API密钥为abc123def456ghi0
,API密码为123qwertyuiopasdfghjklzxcvbnm456
。大纪元时间是12345678
,方法当然是POST
,我想发送比特币的电子邮件是me@example.com
,金额是0.00000015
BTC和钱包/帐户ID是2bbf394c-193b-5b2a-9155-3b4732659ede
。
我向https://api.coinbase.com/v2/accounts/2bbf394c-193b-5b2a-9155-3b4732659ede/transactions
发出POST请求,并将正文设置为type=send&to=me@example.com&amount=0.00000015¤cy=BTC
这很好用,我遇到的问题是标题中的sha256签名。我可以将CB-ACCESS-KEY
设置为abc123def456ghi0
,CB-ACCESS-TIMESTAMP
设置为12345678
,我可以轻松创建sha256签名并使用我的密钥签名,我只是我想我在
现在我有一些变量:
时间戳:12345678
方法:POST
requestPath:/v2/accounts/1dcea380-77e6-5fd4-8a5b-28c41be39a57/transactions
body:{{ 1}}
在开发者页面上,它表示要加入消息中的时间戳,方法,请求路径和正文。我这样做并用我的密钥签名但我仍然收到错误。我只是一个业余爱好者,所以没有多少经验,这是我的信息:type=send&to=me@example.com&amount=0.00000015¤cy=BTC
然后我用我的密钥12345678POST/v2/accounts/2bbf394c-193b-5b2a-9155-3b4732659ede/transactionstype=send&to=me@example.com&amount=0.00000015¤cy=BTC
必须有一些简单的我缺少,我知道所有的变量都正在加入,所以也许我有一个123qwertyuiopasdfghjklzxcvbnm456
某个地方不应该或者我需要切换一些东西,我只知道有一个简单的解决方案,所以如果有人可以帮助它将非常感激。
答案 0 :(得分:0)
抱歉 - 结果我的HMAC sha256编码器也编码到base64。我已修复此问题,现在它正在运行。