首页 文章

google oauth2中的invalid_client

提问于
浏览
69

我尝试为youtube视频上传创建一个网页,因此我尝试从google api控制台获取客户端ID,并在api控制台中显示如下内容:

Client ID: 533832195920.apps.googleusercontent.com
Redirect URIs: http://bobyouku.ap01.aws.af.cm/testyoutube.php
https://developers.google.com/oauthplayground

但是,当我尝试使用以下URL测试我的帐户时:

https://accounts.google.com/o/oauth2/auth?client_id=533832195920.apps.googleusercontent.com&redirect_uri=http%3A%2F%2Fbobyouku.ap01.aws.af.cm%2Ftestyoutube.php&scope=https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fyoutube&response_type=code&access_type=offline

它给出了invalid_client的结果 . 即使我在oauth2操场上尝试它,也会发生同样的失败

所以任何人都知道发生了什么?

22 回答

  • 0

    我没有工作,因为我是从文档中的按钮创建的 . 我再次访问该项目并创建了另一个OAuthClientID . 有效 . 是的,请注意右侧和左侧的额外空间 .

  • 1

    设置/更改您的产品名称,我遇到此问题,直到我创建了与项目名称相同的产品名称 .

    可以在项目的Google Developers Console的“同意”屏幕部分中设置产品名称 . 在左侧导航中查看API和auth,然后选择Consent屏幕 . 您还需要在产品名称上方的框中设置您的电子邮件地址 .

  • 31

    从Google Web UI复制值后,我有一个空格:

    • client_id

    • secret

    两者都在 BEGINNINGEND .

  • 4

    修剪 client_idclient_secret 的前导和尾随空格 . Google的复制按钮不会为您执行此操作 .

    Client ID and Client Secret

    为OAuth许可屏幕设置电子邮件地址和产品名称字段 .

    OAuth Consent Screen Configuration

  • 1

    在Google开发者控制台的同意屏幕中设置电子邮件地址和产品名称,解决了错误“错误:invalid_client . 未找到OAuth客户端” . 为了我 .

  • 0

    我的ID中有两次.apps.googleusercontent.com .

    这是一个复制和粘贴问题“您的ID在这里”.apps.googleusercontent.com

  • 58

    在这个帖子中我找到了答案 .

    • 我去了google console,

    • 生成一个新项目,进行刷新,因为在我的情况下创建页面后没有重新加载

    • 选择新项目

    • 创建客户端ID

    • 根据您的需要使用它

    谢谢你们:D

  • 5

    在我的情况下,这结果是其他的东西,即我的代码使用了一个未正确设置的环境变量(并且我的代码没有愚蠢地检查) . 设置它,重新编译资产,然后重新启动应用程序就可以了 .

  • 0

    invalid_client也可以简单地表示在创建Oauth2对象时,您的客户端ID和客户端密钥是错误的 .

  • 0

    我通过从clientID和clientSecret值中删除不必要的引号来解决这个问题 .

  • 7

    错误是否还报告它缺少应用程序名称?在项目设置对话框中创建项目名称(例如“Project X”)之前,我遇到了这个问题 .

  • 106

    可能旧凭据无效

    看到下面的答案

    stackoverflow answer

    或短名称可能有用

    看到下面的答案stackoverflow answer

    或产品名称与已经回答的项目名称相同

    有时可能会包括额外的空间

    检查此行两次,以便重定向到正确的URL

  • 0

    如果您按照文档,从此页面https://developers.google.com/identity/sign-in/web/sign-in#specify_your_apps_client_id

    你会看到的

    <meta name="google-signin-client_id" content="YOUR_CLIENT_ID.apps.googleusercontent.com">
    

    但这是错的 . 它应该是

    <meta name="google-signin-client_id" content="YOUR_CLIENT_ID">
    

    问题是无论如何都会添加'.apps.googleusercontent.com' . 如果你按照文档说的那样做,你会得到'.apps.googleusercontent.com'两次

  • 16

    在Google API控制台上检查您的项目名称 . 你选择你创建的另一个项目 . 我是同样的错误 . 我的错误是选择不同的项目 .

  • 0

    在Credentials上接受来自这些HTTP引用者(网站)的请求(可选)使用通配符作为通配符 . 如果您将此留空,则会从任何推荐人接受请求 . 在 生产环境 中使用此密钥之前,请务必添加引用 . 添加 . (星点星) . 它对我来说很好

  • 0

    我意外地在URL的Client Secret部分中有一个值,但Google Credential不需要Android OAuth 2客户端ID的客户端密钥 . 只需在URL中留空值就可以了 .

  • 2

    对我有用的步骤:

    • 删除不适合您的凭据

    • 使用一些NAME创建新凭据

    • 在OAuth许可屏幕上填写相同的NAME

    • 在OAuth同意屏幕上填写电子邮件地址

    名称应该完全相同 .

  • 7

    另一件要检查的事情:

    当您使用NuGet将GoogleAPI安装到.Net应用程序中时,它将在您的* .config文件中注入一组新的虚拟值 .

    检查是否仍有原始值,并删除虚拟条目 .

  • 3

    我用trim解决了我的问题:

    'google' => [
        'client_id' =>trim('client_id),
        'client_secret' => trim('client_secret'),
        'redirect' => 'http://localhost:8000/login/google/callback',
    ],
    
  • 0

    以下都不是我的问题 - 我通过打开隐身窗口解决了这个问题 . 显然有些东西被缓存了在某个地方,没有任何改变的auth客户端设置有帮助,并且配置值中始终没有任何尾随或前导空格 .

  • 0

    删除客户端ID并创建新客户端ID几次对我有用 .

  • 0

    为获得最佳效果,请确保您拥有以下完整详细信息:

    {"client_id":"282324738-4labcgdsd4nlh34885s2d34tmi.apps.googleusercontent.com","project_id":"abcd23ss-212808","auth_uri":"https://accounts.google.com/o/oauth2/auth","token_uri":"https://www.googleapis.com/oauth2/v3/token","auth_provider_x509_cert_url":"https://www.googleapis.com/oauth2/v1/certs","client_secret":"23452-dfgdfgcdfgfd","redirect_uris":["http://localhost:6900/auth/google/callback"],"javascript_origins":["http://localhost:6900"]}
    

    此数据始终可从https://console.developers.google.com/apis/credentials/oauthclient/以JSON格式下载

相关问题