来自 Google Identity Toolkit 的 IDP 响应无效


Invalid IDP response from Google Identity Toolkit

我正在按照教程获取一个简单的应用程序,其中包含Google Identity Toolkit和PHPhttps://developers.google.com/identity-toolkit/quickstart/php

出现登录按钮,我可以选择我的Google帐户,我可以授予我的应用程序访问和读取我的个人资料的权限等。

然后我网站上的回调网址说"INVALID_IDP_RESPONSE",在Firebug中我看到

https://www.googleapis.com/identitytoolkit/v3/relyingparty/verifyAssertion?key=mykeyremoved
Failed to load resource: the server responded with a status of 400 (Bad Request)

我已经尝试重新运行本教程但没有成功,有关如何进行此调试的任何帮助将不胜感激!

此致敬意Johan

登录脚本按钮代码:www.exanple.com/index.php

<!DOCTYPE html>
<html>
<head>
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<script type="text/javascript" src="//www.gstatic.com/authtoolkit/js/gitkit.js"></script>
<link type="text/css" rel="stylesheet" href="//www.gstatic.com/authtoolkit/css/gitkit.css" />
<script type="text/javascript">
  var config = {
      apiKey: 'mykeyremoved',
      signInSuccessUrl: '/',
      idps: ["google"],
      oobActionUrl: '/',
      siteName: 'this site'
  };
  // The HTTP POST body should be escaped by the server to prevent XSS
  window.google.identitytoolkit.start(
      '#gitkitWidgetDiv', // accepts any CSS selector
      config,
      'JAVASCRIPT_ESCAPED_POST_BODY');
</script>

</head>
<body>
<!-- Placeholder for the sign in page -->
<div id="gitkitWidgetDiv"></div>
</body>
</html>

在 www.exanple.com/gitkit/index.php 返回/重定向 URL(这是产生错误代码的 URL)

<!DOCTYPE html>
<html>
<head>
<?php
  set_include_path(get_include_path() . PATH_SEPARATOR . __DIR__ .''quickapp'vendor'google'apiclient'src');
  require_once 
'quickapp/vendor/autoload.php';
  $gitkitClient=Gitkit_Client::createFromFile('http://www.exanple.com/quickapp/gitkit-server-config.json');
  $gitkitUser = $gitkitClient->getUserInRequest();
?>
<script type="text/javascript" src="//www.gstatic.com/authtoolkit/js/gitkit.js"></script>
<link type=text/css rel=stylesheet href="//www.gstatic.com/authtoolkit/css/gitkit.css" />
<script type=text/javascript>
  window.google.identitytoolkit.signInButton(
    '#navbar', // accepts any CSS selector
    {
      widgetUrl: "http://www.exanple.com/gitkit",
      signOutUrl: "/",
    }
  );
</script>
</head>
<body>
<div id="navbar"></div>
<p>
  <?php if ($gitkitUser) { ?>
    Welcome back!<br><br>
    Email: <?= $gitkitUser->getEmail() ?><br>
    Id: <?= $gitkitUser->getUserId() ?><br>
    Name: <?= $gitkitUser->getDisplayName() ?><br>
    Identity provider: <?= $gitkitUser->getProviderId() ?><br>
  <?php } else { ?>
    You are not logged in yet.
  <?php } ?>
</p>
</body>
</html>

你和我都有类似的错误,我们都会收到一个bad request from IDP我目前正在向谷歌寻求帮助,无论如何,请随时查看以下链接,该链接是关于我现在问的有关此事的问题,我知道这可能不是您所期望的答案,但事实上,我正试图与您分享我所拥有的一旦我能够确定解决问题,我会尽快通知您。请随时查看以下链接

身份工具包不起作用 - 错误代码:IDP 响应错误