google auth 2.0 和 openid connect 的重定向 URI 不匹配错误(OAuth 客户端 ID 类型“Chrome 扩展程序”和“Web 应用程序”)

问题描述 投票:0回答:1

我对 Chrome 扩展开发非常陌生。我正在尝试将谷歌身份验证集成到我正在构建的 Chrome 扩展中。首先,我使用“Chrome 扩展”类型的 OAuth 客户端 ID 添加了 google auth,该 ID 在设置时不需要输入重定向 URI。当尝试使用扩展程序登录时,我收到 google 登录的弹出窗口,并显示以下错误:

您无法登录,因为此应用发送了无效请求。你可以 请稍后重试或联系开发人员解决此问题。

如果您是此应用程序的开发者,请参阅错误详细信息。

错误 400:redirect_uri_mismatch

我检查了数百次,发现重定向 URI 是正确的。我检查了扩展 ID,发现它是相同的。我使用代码

chrome.identity.getRedirectURL()
来获取重定向 URI,它会返回正确的 URI。我也尝试过将重定向 URI 传递到编码的 Web 身份验证流,但没有成功,错误仍然存在。

为了尝试不同的方法,我创建了一个“Web 应用程序”类型的 OAuth 客户端 ID,它明确要求您在创建时输入重定向 URI。但错误是相同的并且持续存在。

目前我不确定我还能尝试什么。我将不胜感激任何有关此事的帮助。另外,我不确定我可以提供哪些其他信息,但请让我知道您需要哪些其他信息。我主要使用 this 教程来使用“Web 应用程序”方法实现 oauth。

谢谢,

google-chrome-extension oauth-2.0 google-oauth google-openid sign-in-with-google
1个回答
0
投票

请按照此指南将 Google 身份服务集成到您的 Chrome 扩展程序中。

launchWebAuthFlow()
方法 为非 Google 身份提供商启用身份验证流程。您应该使用
getAuthToken()
方法
,它将 OAuth 2.0 响应直接传递到您的应用程序,并且不需要您提供重定向 URI。

© www.soinside.com 2019 - 2024. All rights reserved.