当前位置: 首页 > 知识库问答 >
问题:

PHP|谷歌网站管理员API服务帐户没有权限

诸葛文博
2023-03-14

我使用以下代码从搜索控制台获取我的网站的统计数据:

$client = new Google_Client();
$creds = $client->loadServiceAccountJson('---JSON FILE---', 'https://www.googleapis.com/auth/webmasters.readonly');
$client->setAssertionCredentials($creds);


$service = new Google_Service_Webmasters($client);

$ressource = $service->searchanalytics;

$options = new Google_Service_Webmasters_SearchAnalyticsQueryRequest();
$options->setStartDate('2015-11-11');
$options->setEndDate('2015-11-11');

try{
    $response = $ressource->query('http://www.example.com/', $options);
} catch (Exception $e){
    echo $e->getMessage();
}

我使用google服务帐户来授权api调用,但它给了我一个错误:

呼叫POST时出错https://www.googleapis.com/webmasters/v3/sites/http://www.example.com//searchAnalytics/query: (403)用户没有足够的权限访问站点“http*:///www.example.com/”。另见:https://support.google.com/webmasters/answer/2451999.

我还将服务帐户的电子邮件地址作为所有者添加到我的搜索控制台属性中,但错误仍然存在。我不知道了,我做错了什么?

共有2个答案

谷涵容
2023-03-14

检查该物业是否列在网站列表中:https://developers.google.com/webmaster-tools/v3/sites/list

仔细检查属性url中的https和www。

艾凌龙
2023-03-14

因此,问题正在得到解决!

问题是,首先你必须将服务帐户添加到搜索控制台属性中,然后授予它权限,然后让它成为所有者,而你不会再次获得权限错误!

在这里找到了解决方案:Google Webmasters API for Java返回空站点列表

 类似资料:
  • 我正试图从谷歌网站管理员工具中获取我的公司注册的公司列表。我使用PHP和用于PHP的GoogleAPI客户端库来实现这一点(https://developers.google.com/api-client-library/php/). 我已经做了所有的事情,除了结果是它给了我一个空数组。我的代码如下,任何帮助都将不胜感激。 为客户端id、帐户等填写适当的值,并且所有内容都进行了适当的身份验证,因为

  • 我使用GoogleAPI php客户端库访问网站管理员工具数据。当我想列出网站地图时,它出现了致命错误:未捕获的异常“Google\u Service\u exception”(403)用户没有足够的网站权限。另见:https://support.google.com/webmasters/answer/2451999.'我将服务帐户电子邮件地址添加为我网站的限制用户,但错误仍然存在。 最后我找到

  • 我正在使用一个服务帐户访问我们的域名用户的谷歌驱动器,这工作像一个魅力!然而,我现在正在尝试使用相同的服务帐户获得用户的activity在谷歌驱动器。 我已授予服务帐户API访问https://www.googleapis.com/auth/activity和https://www.googleapis.com/auth/drive的权限 并启用API! 然而我总是得到错误403,禁止! 可能需要

  • 我正在使用Google. net客户端库来访问谷歌日历应用编程接口。我需要研发创建日历事件并将其发布给用户的应用程序。 这是一个服务器到服务器的应用程序,所以我创建了一个服务帐户,并用它来发送邀请。当从web浏览器提交响应时,创建的与会者对这些事件的响应将被更新,但当来自outlook等任何邮件客户端的响应时,响应将以电子邮件的形式发送给服务帐户电子邮件id(这是一个虚拟电子邮件id)。如何将有效

  • 我正在使用这个库:https://github.com/googleapis/google-api-php-client 我创建了一个简单的PHP脚本,从谷歌搜索控制台/网站管理员工具中获取一些关于我拥有的域名性能的信息。 它不打算代表访问页面并拥有自己网站的用户进行自动身份验证。它旨在显示关于我的网站的信息,并通过固定的服务号进行标识。下面更详细。 下面是PHP代码: 因此,我做了以下工作: 在

  • 有没有人能提供一个例子或链接,说明如何从谷歌网站管理员工具API导出? 存储库中没有示例,似乎任何地方都没有可用的教程/示例 https://github.com/google/google-api-php-client 此代码连接到网站管理员工具。。如何从特定日期间隔下载?