ruby - 访问 Google API 时的 OAuth 2.0 示例错误

标签 ruby oauth google-api oauth-2.0 google-api-client

在开源项目 google-api-ruby-client 中,我正在尝试运行 OAuth 2.0 示例 calendar.rb,它将访问 Google Calendar API。 我在 Google API 控制台中创建了客户端 ID,并在 ruby​​ 脚本中填写了客户端 ID 和密码。

但是,在我运行 ruby​​ 脚本之后

ruby calendar.rb

然后打开http://localhost:4567,浏览器从Google返回错误信息给我:

Error: redirect_uri_mismatch
The redirect URI in the request: http://localhost:4567/oauth2callback did not match a     registered redirect URI

我查看了 Google API 控制台中的信息:

Redirect URIs:  https://localhost/oauth2callback
JavaScript origins: https://localhost

问题是什么以及如何解决?提前致谢。

最佳答案

重定向 URI 必须完全匹配。你不能遗漏任何东西。您已经删除了端口号。但是不匹配尾部斜杠或其他任何东西都会导致此错误。它必须是一个字符对字符的精确匹配。

这两个值应该是:

重定向 URI:https://localhost:4567/oauth2callback

JavaScript 来源:https://localhost:4567

关于ruby - 访问 Google API 时的 OAuth 2.0 示例错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9290182/

相关文章:

ruby - rake 错误 : "warning: already initialized constant FileUtils::OPT_TABLE"

ruby - 如何让 Sinatra 使用 CSRF 真实性 token ?

ruby-on-rails - 访问从 Rails 中的日期助手发送的 date() 变量

Ruby:计算 float 中的数字

mobile - 我可以将授权码与 PKCE Flow 一起用于移动应用程序吗?

android - 具有不同风格的 Android 应用程序的客户端 ID

c# - 如何使用谷歌API从谷歌日历获取IST

node.js - NodeJS Facebook 用户源订阅 : Invalid OAuth access token

java - 协议(protocol)获取Java URL

security - OAuth 2.0 中的客户端 key