我正在尝试为 API 调用创建签名 - 文档提供了以下说明:
timestamp = str(int(time.time()))
message = timestamp + request.method + request.path_url + (request.body or '')
signature = hmac.new(self.secret_key, message, hashlib.sha256).hexdigest()
Run Code Online (Sandbox Code Playgroud)
但是,我总是收到此错误:
Exception has occurred: TypeError key: expected bytes or bytearray, but got 'str'
File "/Users/dylanbrandonuom/BouncePay_Code/src/coinbase/Coinbase_API.py", line 26, in __call__
signature = hmac.new(self.secret_key, message, hashlib.sha256).hexdigest()
File "/Users/dylanbrandonuom/BouncePay_Code/src/coinbase/Coinbase_API.py", line 40, in <module>
r = requests.get(api_url + 'user', auth=auth)
Run Code Online (Sandbox Code Playgroud)
我试过改变
signature = hmac.new(self.secret_key, message, hashlib.sha256).hexdigest()
Run Code Online (Sandbox Code Playgroud)
到
signature = hmac.new(b'self.secret_key', message, hashlib.sha256).hexdigest()
Run Code Online (Sandbox Code Playgroud)
但没有成功。
这是错误的第二部分:
api_url = 'https://api.coinbase.com/v2/'
auth = CoinbaseWalletAuth(API_KEY, …Run Code Online (Sandbox Code Playgroud) 我正在设置 Flutter,但只能通过在命令前添加 sudo 来运行 Flutter 命令。
我得到的错误是:
shlock:
open(/Users/drandomuom/dev/flutter/bin/cache/shlock97760):
Permission denied
Run Code Online (Sandbox Code Playgroud)
我不知道为什么我会得到这个,因为我在我自己的主文件夹中工作。
任何建议都会很棒。谢谢。
我试过在 zsh 和 bash 中运行,我已经检查了文件夹权限并且已经读写