什么是我的google-signin-client_id

时间:2015-04-22 09:56:11

标签: migration google-openid

我的网站曾经有一个链接,允许用户使用Open ID 2.0中的Google帐户登录。自2015年4月20日起,这已不再有效,因此我尝试迁移到Google登录。

此页面: https://developers.google.com/identity/sign-in/web/sign-in#specify_your_apps_client_id

说:

  

使用google-signin-client_id元素在Google Developers Console中指定您为应用创建的客户端ID。

我不知道我的客户端ID是什么。在我的Google Developers Console中: https://console.developers.google.com/project

我只使用GoogleApp创建了一个非常旧的应用程序,它与我所谈论的网站完全无关。我无论如何都尝试使用它的项目ID,并在点击登录按钮后出现以下错误:

401. That’s an error.

Error: invalid_client

The OAuth client was not found.
Request Details

    fetch_basic_profile=true
    scope=email profile openid
    response_type=permission
    redirect_uri=storagerelay://http/localhost?id=auth684995
    ss_domain=http://localhost
    client_id=imitatorgwt.apps.googleusercontent.com
    openid.realm=

That’s all we know.

我应该在google-signin-client_id元标记中写什么?

2 个答案:

答案 0 :(得分:4)

您需要创建/配置Google OAuth客户端。有关如何为Google OpenID2执行此操作的详细说明 - > OpenID Connect迁移,请查看Google's migration dev docs(特别是与Google Developers Console相关的部分)。

可能的工作流程是:

  • 转到Google Developer Console
  • 在"选择一个项目"在顶部,选择"创建新项目"并填写详细信息。
  • 在左侧的信息中心中,转到" API&验证" - >凭证。
  • 在" OAuth"下,点击"创建新客户ID"。
  • 在"应用程序类型"下,选择" Web应用程序"。
  • 在"授权的Javascript来源"下,输入您网站的网址。 "授权重定向网址"会自动更新。
  • 点击"创建客户ID"。
  • 可以随时访问"凭据"新的客户ID。在左侧仪表板中。它看起来像这样:" 3453453452345-dfgjw3456u2094mlfg45p.apps.googleusercontent.com"。

希望有所帮助!

<强>更新

我们更新了推荐的文档,其中包含有关如何创建Google项目+客户ID的说明,请参阅https://developers.google.com/identity/sign-in/web/devconsole-project。这应该会让开发人员在未来更容易。

再次感谢您报告此问题!

答案 1 :(得分:0)

已经在几个项目中实施了“网站的Google登录”,起初Google guideline在以下几行让我有些困惑:

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

第一行<meta name="google-signin-client_id"...使我想到我需要在此处放置一些google-id。

  

现在回答问题:

     

我应该在google-signin-client_id元标记中写什么?

     

<meta>是HTML标准的一部分,该标记提供有关HTML文档的元数据(或信息)。元数据将不会显示在页面上,但可以在计算机上解析。来源:w3schools html reference

因此,请记住,标记的“名称”属性只是从字面上指定元数据的名称。换句话说,它仅描述“内容”属性。尝试将name="google-signin-client_id"改为name="my-content",然后看看会发生什么。

  

永远记住:最好的学习方法是尝试,失败,调试和纠正。