带有PHP客户端库的Google Directory API提供了403

时间:2015-07-18 02:57:57

标签: google-api-php-client google-admin-sdk google-directory-api

关于Directory API和PHP Client lib,我已经讨论过几个问题,但没有一个问题。最接近的是这一个: Google Apps Admin SDK Directory API 403 in PHP 但问题仍然存在。

我无法使用PHP客户端库访问Directory API(Admin SDK)。

我可以访问电子邮件设置API。

它们都与Admin SDK相关,所以我不明白为什么当我访问电子邮件设置API时,我得到一个令牌,但是当我尝试访问Directory API时,我得到403“请求的客户端未经授权。” / p>

代码是

    $scopes = array('https://www.googleapis.com/auth/admin.directory.user',
'https://apps-apis.google.com/a/feeds/emailsettings/2.0/');
    $auth = new Google_Auth_AssertionCredentials(G_CLIENT_EMAIL, $scopes,file_get_contents (G_CLIENT_KEY_PATH),
                    'notasecret',
                    'http://oauth.net/grant_type/jwt/1.0/bearer',
                    'my.superadmin@account.com', false
        );

我错过了什么?

另外:你如何使用PHP Client lib中的日志/调试类? 我看到抽象类但无法弄清楚如何使用它。最后,我在Curl.php中放置了自己的print语句来检查发生了什么。

1 个答案:

答案 0 :(得分:0)

我发现了这个错误,最初我想把这个问题从耻辱中删除,但这可能有助于其他人节省几个小时。

基本上在项目控制台中,有2个客户端ID,本机App ID和服务帐户ID。

当我扩展项目范围时,我在域控制面板中使用了错误的客户端ID。虽然这是我一遍又一遍地检查的东西,但在我为Google支持人员准备文档之前,这并不是我看到的。只有当我复制并粘贴我在控制面板中放置的内容时,我在项目控制台中看到的内容,我才看到只有第一组数字匹配。

wooops。