gpt4 book ai didi

coinbase-api - Coinbase Websocket,身份验证中的签名

转载 作者:行者123 更新时间:2023-12-05 05:13:41 28 4
gpt4 key购买 nike

应该如何生成签名参数以打开与 Coinbase Websocket 的经过身份验证的连接?我在任何地方都找不到任何简洁的描述。

对于 GET/PUT API 调用,我使用下面的代码成功生成了它,但是对于 Websocket 既没有“方法”也没有“path_url”,所以什么应该包含“消息” “?

timestamp = str(time.time())
message = timestamp + request.method + request.path_url + (request.body or '')
hmac_key = base64.b64decode(self.secret_key)
signature = hmac.new(hmac_key, message.encode('utf-8'), hashlib.sha256)
signature_b64 = base64.b64encode(signature.digest())

最佳答案

终于解决了这个问题。当然,代码看起来并不那么有趣。

我将以下内容与 CCXT 结合使用图书馆。更具体地说,Websockets 分支实现 here .

const id = this.marketId (symbol)
const timestamp = Date.now() / 1000

const p_passphrase = this.safeValue(params, 'password')
const p_apiKey = this.safeValue(params, 'apiKey')
const p_secret = this.safeValue(params, 'secret')

const what = timestamp + 'GET' + '/users/self/verify'
const key = Buffer.from(p_secret, 'base64')
const hmac = require('crypto').createHmac('sha256', key)
const signature = hmac.update(what).digest('base64')

this.websocketSendJson({
'type': 'subscribe',
'product_ids': [id],
'channels': ['user'],

'key': p_apiKey,
'signature': signature,
'timestamp': timestamp,
'passphrase': p_passphrase,
})

希望对您有所帮助!

关于coinbase-api - Coinbase Websocket,身份验证中的签名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53307147/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com