【发布时间】:2025-12-10 05:00:01
【问题描述】:
我正在建立一个网站,用户通过 coinbase 进行身份验证,然后让网站通过与 Auth2 的连接代表用户行事。当我使用 Auth2 连接时会出现问题。 https://github.com/coinbase/coinbase-node
var client = new Client({'accessToken': accessToken, 'refreshToken':refreshToken});
我得到的错误是:
InvalidScope: Scopes don't match current API version.
at handleHttpError (/home/rasmus/Documents/bitlounge/node_modules/coinbase/lib/errorHandler.js:46:15)
at Request.onGet [as _callback] (/home/rasmus/Documents/bitlounge/node_modules/coinbase/lib/ClientBase.js:155:10)
at Request.self.callback (/home/rasmus/Documents/bitlounge/node_modules/request/request.js:187:22)
at emitTwo (events.js:126:13)
at Request.emit (events.js:214:7)
at Request.<anonymous> (/home/rasmus/Documents/bitlounge/node_modules/request/request.js:1044:10)
at emitOne (events.js:116:13)
at Request.emit (events.js:211:7)
at IncomingMessage.<anonymous> (/home/rasmus/Documents/bitlounge/node_modules/request/request.js:965:12)
at emitNone (events.js:111:20)
我尝试使用'wallets:accounts:read' 范围,但没有成功。
var client = new Client({'accessToken': user.accessToken, 'refreshToken': user.refreshToken, "scope": ["wallet:accounts:read"]});
【问题讨论】:
-
我遇到了同样的错误信息。确保您没有选择任何 API v1 范围。如果您从两个版本中选择范围,库似乎将无法工作。
-
我正在使用 passport-coinbase 对范围为
['user']的用户进行身份验证。我猜那是 API v1,我也应该改变它吗? -
我正在使用 coinbase-python。我不知道护照币库。但我想这也适用。据我了解,当前版本的库同时适用于 v1 和 v2,只是不能同时使用。您必须选择 v1 或 v2。 v2 具有 v1 的所有作用域,甚至更多。所以我建议去 API 设置并取消选中所有 v1 范围,检查 v2 上的正确范围,看看会发生什么。
标签: node.js oauth-2.0 coinbase-api