当控制台中存在每个可能的uri时,Google OAuth2 PHP客户端重定向\u uri\u不匹配

当控制台中存在每个可能的uri时,Google OAuth2 PHP客户端重定向\u uri\u不匹配,php,google-oauth,google-api-php-client,Php,Google Oauth,Google Api Php Client,我已经将调用PHP库中的任何OAUTH 2.0代码或库重定向到的任何页面的所有可能URI都放在开发人员控制台凭据中。有向前的斜杠,没有 我收到此错误的页面的确切URI位于控制台中。它不是在谈论我当前使用的URI,它是原始URI吗?这仍然没有意义,因为它也在控制台中 我得到这个错误的URI与控制台中的URI之间的唯一区别是,它的末尾有一个#url片段。但是当我试图在控制台中添加它时,我得到了一个错误——我假设是因为不允许使用片段 我不知道这个片段是从哪里来的,但在我获得授权代码后,我通过更改PHP

我已经将调用PHP库中的任何OAUTH 2.0代码或库重定向到的任何页面的所有可能URI都放在开发人员控制台凭据中。有向前的斜杠,没有

我收到此错误的页面的确切URI位于控制台中。它不是在谈论我当前使用的URI,它是原始URI吗?这仍然没有意义,因为它也在控制台中

我得到这个错误的URI与控制台中的URI之间的唯一区别是,它的末尾有一个#url片段。但是当我试图在控制台中添加它时,我得到了一个错误——我假设是因为不允许使用片段

我不知道这个片段是从哪里来的,但在我获得授权代码后,我通过更改PHP标题位置进入页面,如下所示:

返回标题('位置:https://website.com/m/?mail=tokened');

错误所在页面的URI以及上面代码行所指向的URI为:
https://website.com/m/?mail=tokened#
和控制台中的URI是
https://website.com/m/?mail=tokened
https://website.com/m?mail=tokened

更新:

下面是我得到的确切错误:

数组(2){[“错误”]=>string(21)“重定向uri\u不匹配”[“错误描述”]=>string(11)“错误请求”}

在本页:

以下是开发人员控制台凭据的屏幕截图:

下面是我正在使用的代码:

<?php
session_start();
if(isset($_GET['mail']) && $_GET['mail']==='approved'){
   setcookie('authCode', $_GET['code'], time()+(60*60), '/');
   return header('Location: https://keyreader.xyz/m/?mail=tokened');
}
if(isset($_GET['mail']) && $_GET['mail']==='tokened'){
    require_once 'php/vendor/autoload.php';
    $client = new Google_Client();
    $client->setAuthConfig('php/client_secret.json');
    $client->setAccessType('offline');
    $client->setApprovalPrompt('force');
    $client->addScope(array('email', 'profile'));
    var_dump($client->fetchAccessTokenWithAuthCode(urldecode($_COOKIE['authCode'])));
} ?>


因此,我获取授权代码并将其存储在cookie中,因为我认为url中的code参数的值不同,这一切都会导致重定向错误,因为url每次都不同,所以我无法将其放在控制台中。然后我重定向到同一个页面,但url中没有code参数,并获取访问令牌。

不确定原因,但从开发人员控制台删除所有url,然后重新输入,然后下载一个新的客户端机密文件似乎行得通

更改重定向url后,必须更新client_id.json文件,因为它包含重定向url

{"web":
{
    "client_id":"xxxx.apps.googleusercontent.com",
    "project_id":"some-xxx",
    "auth_uri":"https://accounts.google.com/o/oauth2/auth",
    "token_uri":"https://accounts.google.com/o/oauth2/token",
    "auth_provider_x509_cert_url":"https://www.googleapis.com/oauth2/v1/certs",
    "client_secret":"xxxxxxxxxx",
    "redirect_uris":[
        "http://website.com/getGoogleUrl",
        "http://website.dev/getGoogleUrl"
    ]
}}

在重定向URI列表中,您当前的重定向url应该是第一个。

不确定,但这发生在我身上。设置重定向URI后,能否重新下载客户端凭据json文件并重试。请在开发人员控制台中发布代码和设置的屏幕截图@DaImTo道歉,我希望我误解了错误的意思,但我已经用代码和截图更新了我的问题。希望这能帮助你帮助我。这正是我告诉你的。很高兴知道它正在工作。