- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
我正在尝试在我的系统中实现一次性代码登录流程。应用包含两部分:1)向Google+请求一次性授权码的Android应用2)Rails 服务器在请求 header 中从 android 应用程序接收一次性代码,并尝试从 Google+ 交换代码以获取 access_token
和 id_token
问题是,如果我在浏览器中使用 JavaScript 登录按钮获取一次性代码,一切正常,但当 Android 应用程序获取一次性代码,然后将其发送到我的服务器时,一切都无法正常工作。
我总是得到
"error" : "redirect_uri_mismatch"
我的服务器设置如下:
{ "web":
{ "client_id": "MY_REGISTERED_WEB_APP_CLIENT_ID",
"client_secret": "MY_CLIENT_SECRET",
"redirect_uris": ["postmessage"],
"auth_uri": "https://accounts.google.com/o/oauth2/auth",
"token_uri": "https://accounts.google.com/o/oauth2/token"
}
}
现在,我如何从 Android 应用请求一次性代码:我使用与我的服务器上相同的 MY_REGISTERED_WEB_APP_CLIENT_ID
来请求一次性代码。我不知道,也许我必须在 Android 上使用与我的 Android 应用程序相对应的另一个客户端 ID?但是所有找到的文档和文章都指向已注册网络应用 client_id
。
或者也许我的 rails 服务器不应该配置为网络,而是配置为在 Google 控制台应用程序中注册的安装类型?
现在关于 redirect_uris
。我尝试在 Google 控制台中设置多个 redirect_uris
:
http://localhost:5000
https://localhost:5000
http://my.deployment.url/auth2callback
Google 控制台中的 Web 来源设置为 - http://my.deployment.url
- http://localhost:5000
无法弄清楚我做错了什么。其实我不明白为什么我需要设置这个 redirect_uris
值,因为我不想从谷歌那里得到回调,我只想得到 access_token
并使用它用于访问 Google+。
最佳答案
发生这种情况是因为您的 Android 应用程序用于创建初始登录流程的 redirect_uri 与服务器在尝试为 access_token 交换代码时使用的 redirect_uri 不同。用户返回的 redirect_uri 和 token 交换中使用的 redirect_uri 必须匹配。
关于android - Google+ 登录 redirect_uri_mismatch 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20427923/
我正在使用 oauth2 gem 进行谷歌登录验证。我的代码看起来像 omniauth.rb OmniAuth.config.logger = Rails.logger require "omniau
我在 Visual Studio Express 2012 for Web 中有一个网站。 当我尝试以下代码时,我不断收到来自 google 的错误,提示开发者控制台中列出的重定向 uri 不匹配:
无法登录到 firebase CLI。 firebase login 在浏览器中生成如下错误提示: The redirect URI in the request, http://localhost:
我们在尝试从 Google 获取 oAuth token 时遇到“redirect_uri_mismatch”错误: [client 127.0.0.1:49892] {\n "error" : "
我正在尝试使用 socialite 登录 google,我的 facebook 登录工作正常,所以我的 google 应用程序出现问题,任何帮助!!! 'google' => [ 'clie
我已经在我的应用程序中集成了用于登录的google ios SDK,并能够使用该SDK生成授权代码。尝试在服务器端使用相同的授权代码时,我不断收到redirect_uri_mismatch错误。在Go
我正在尝试遵循本指南:Using OAuth 2.0 for Installed Applications 我通过了第一部分,用户可以授权我的应用访问他们的 Google Drive。用户授予权限后,
尝试在我的网站上实现 hybridauth 2.4,除了 config.php 之外的所有代码都是开箱即用的,但我在使用 Google+ 时遇到了问题。我已经尝试了一切,并且正在慢慢失去它。 400
尝试使用 github api 时,我不断收到相同的 OAuth 错误。有时它会消失,但大多数时候它会留下。我曾尝试重置我的 key ,撤销所有 token ,清除 safari 缓存但没有运气。这是
我正在尝试通过分析 API 从 R 连接到谷歌分析。以下是我的代码。 library(RGoogleAnalytics) oauth_token <- Auth(client.id = "client
URL似乎正确(昨天最后更新了它们): 这些文件也是: omniauth.rb: provider :google_oauth2, 'MY_CLIENT_ID.apps.googleusercon
我关注了这个basic tutorial ,但我得到: Eroare:redirect_uri_mismatchThe redirect URI in the request: urn:ietf:wg
我在具有Google Play排行榜支持的Unity中创建了一个应用。我可以轻松地使其在Android上运行,然后我也转向OSX来为iPhone构建它。 首先我遇到一个问题,苹果不接受任何带有'_'字
我正在尝试在我的系统中实现一次性代码登录流程。应用包含两部分:1)向Google+请求一次性授权码的Android应用2)Rails 服务器在请求 header 中从 android 应用程序接收一次
我想编辑在 Google API 控制台中注册的用于 Google+ 登录的包 ID。 回答这个 question告诉我如何做到这一点,但我没有看到 API Access 下的 Client id 和
我正在尝试让 google plus 身份验证适用于网络应用程序,但不断出现 redirect_uri_mismatch 错误。我检查并重新检查了我在代码和谷歌开发设置中是否有匹配的重定向 url。
全部, 我在尝试通过 google 进行身份验证时收到 400 redirect_url_mismatch 错误。我通过 django 应用程序使用 python-socal-auth 来实现这个过程
我们根据此文档构建我们的 Web 应用程序并与 Google OAuth2 集成 Google Identity Services JavaScript SDK 我们想使用“popup”模式,但是当试
我遵循了这个 Gmail API Python 快速入门教程: https://developers.google.com/gmail/api/quickstart/python 我按照说明在 API
我正在尝试连接到 google drive,为此我正在使用 python pydrive 库。我已经按照文档编写了一个片段来连接谷歌驱动器。但我收到一个错误 错误:redirect_uri_misma
我是一名优秀的程序员,十分优秀!