gpt4 book ai didi

authentication - coinbase oauth2 有时无法更新访问 token (使用刷新 token )

转载 作者:行者123 更新时间:2023-12-04 06:38:40 24 4
gpt4 key购买 nike

我正在将 coinbase 集成到 iOS 应用程序中,并且正在使用 Oauth2 进行身份验证。通过通常的工作流程后,我能够获得访问 token 。每当任何请求达到 401(到期时)时,我都会通过调用以下命令来尝试刷新我的访问 token :

发帖 https://coinbase.com/oauth/token
数据:

grant_type=refresh_token&refresh_token=abcd1234&client_id=theclientid&client_secret=somesecretid

它可以工作一段时间,但有时会因请求响应而失败:

NSHTTPURLResponse: 0x15eb2730
{ URL: https://coinbase.com/oauth/token } { status code: 401, headers {
"CF-RAY" = "f67d477aae4052e-YYZ";
"Cache-Control" = "no-store";
Connection = "keep-alive";
"Content-Type" = "application/json; charset=utf-8";
Date = "Sun, 02 Feb 2014 15:14:14 GMT";
Pragma = "no-cache";
Server = "cloudflare-nginx";
"Set-Cookie" = "__cfduid=<some long alpha-numeric string>; expires=Mon, 23-Dec-2019 23:50:00 GMT; path=/; domain=.coinbase.com; HttpOnly";
Status = "401 Unauthorized";
"Strict-Transport-Security" = "max-age=31536000";
"Transfer-Encoding" = Identity;
Vary = "Accept-Encoding";
"Www-Authenticate" = "Bearer realm=\"Doorkeeper\", error=\"invalid_request\", error_description=\"The request is missing a required parameter, includes an unsupported parameter value, or is otherwise malformed.\"";
"X-Content-Type-Options" = nosniff;
"X-Frame-Options" = SAMEORIGIN;
"X-Rack-Cache" = "invalidate, pass";
"X-Request-Id" = "<some long alpha-numeric string>";
"X-Runtime" = "0.012066";
"X-Ua-Compatible" = "IE=Edge,chrome=1";
} }

有没有人遇到过这个错误?我假设请求 URL 总是正确的。我不知道为什么它会提示“缺少必需的参数”或“不支持的参数”。我还没有想出失败的模式。希望有人之前可能已经看到了这一点。

最佳答案

我无法直接找到有关 refresh_token 请求的任何文档,但我认为您还应该在您的 refresh_token 请求中包含 redirect_uri (基于此: https://coinbase.com/docs/api/authentication#collapse2 )。

另外,我注意到我的官方 coinbase 应用程序在几天前需要重新验证,但是当我登录我的 coinbase 帐户时,它说该应用程序在 25 天前已获得授权。那么,也许甚至 request_tokens 也会超时?一段时间未使用该应用程序后,您的 request_token 请求是否失败?

或者,也许 coinbase 重置了一些东西并使他们所有的 access_tokens 和 refresh_tokens 无效,因为我的应用程序,以前在 refresh_tokens 方面工作正常,现在在 refresh_token 请求上失败了。

因此,我建议在发生这种情况时让您的应用重新授权,并获得新的 access_token 和 refresh_token,因为我认为这就是官方 coinbase 应用所做的。

关于authentication - coinbase oauth2 有时无法更新访问 token (使用刷新 token ),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21513250/

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