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

Google Analytics(分析)网站管理员工具权限不足

颜宸
2023-03-14

我已经得到了分析工作的代码,以便它能够查询谷歌分析,并带回结果,但是当我试图使用代码查询网站管理员工具时,它会返回权限不足。

支持谷歌的API包括:分析API、谷歌搜索控制台API

我有什么遗漏吗?

谷歌分析代码:

$client = new Google_Client();
$client->setAuthConfigFile($SECRET);
$client->addScope(Google_Service_Analytics::ANALYTICS_READONLY); //For analytics stuff
$client->setAccessType('offline');
$client->setPrompt('prompt');

if (isset($_SESSION['access_token']) && $_SESSION['access_token']) {
    $client->setAccessToken($_SESSION['access_token']);

    //Checking to see if the token is expired
    if($client->isAccessTokenExpired()){
        $client->refreshToken($refreshToken);
        $_SESSION['access_token'] = $client->getAccessToken();
    }

    $results = $analytics->data_ga->get(
         $viewID,
         $fromDate,
         $toDate,
         $metrics,
         $optParams);


    foreach($results->rows as $data){
        echo "<pre>",print_r($data),"</pre>";
    }
}else {
    $redirect_uri = $redirectURL;
    header('Location: ' . filter_var($redirect_uri, FILTER_SANITIZE_URL));
}

网站管理员工具代码:

$client = new Google_Client();
$client->setAuthConfigFile($SECRET);
$client->addScope(Google_Service_Webmasters::WEBMASTERS_READONLY); //For WebMaster Tools
$client->setAccessType('offline');
$client->setPrompt('prompt');


if (isset($_SESSION['access_token']) && $_SESSION['access_token']) {
    $client->setAccessToken($_SESSION['access_token']);

    //Checking to see if the token is expired
    if($client->isAccessTokenExpired()){
        $client->refreshToken($refreshToken);
        $_SESSION['access_token'] = $client->getAccessToken();
    }
    //Creating Webmaster Service
    $webmastersService = new Google_Service_Webmasters($client);
    $searchanalytics = $webmastersService->searchanalytics;

    //Creating Request
    $request = new Google_Service_Webmasters_SearchAnalyticsQueryRequest();
    $request->setStartDate('2016-05-01');
    $request->setEndDate('2016-05-31');
    $request->setDimensions( array('query') );

    $qsearch = $searchanalytics->query("http://www.example.co.uk", $request);
    $rows = $qsearch->getRows();
    echo "<pre>",print_r($rows),"</pre>";

} else {
    $redirect_uri = $redirectURL;
    header('Location: ' . filter_var($redirect_uri, FILTER_SANITIZE_URL));
}

网站管理员工具错误消息:

{
 "error": {
  "errors": [
    {
      "domain": "global",
      "reason": "insufficientPermissions",
      "message": "Insufficient Permission"
    }
  ],
  "code": 403,
  "message": "Insufficient Permission"
 }
}

共有1个答案

施刚毅
2023-03-14

当您运行第一个时,您会询问用户我可以访问您的Google Analytics数据吗?用户说可以,您可以访问,并且您会获得一个访问令牌,可用于访问他们的Google Analytics数据。

在第二个问题中,你问用户我可以访问你的网站管理员工具数据吗,用户说可以,你得到一个访问令牌来访问他们的网站管理员工具数据。

如果你把两个作用域放在哪里而不是一个作用域,用户会被问到我可以访问你的google分析数据和你的web master tools数据吗。如果他们说是,您将获得一个访问令牌来访问他们。

如果您尝试使用分析认证请求的身份验证来访问Web主工具,您将获得权限不足。

如果您需要访问两者,请请求访问两者。如果你先想要一个,然后可能以后想要另一个,那么是的,你以后必须向他们要另一个。

 类似资料:
  • 我一直有一个问题与网站管理员工具API。我试图让脚本没有用户交互,并获得我需要的信息。我有谷歌分析与服务帐户,但这是不支持的网站管理员工具。 我目前正在尝试使用API服务器密钥,但当我尝试查询API返回时: 代码403:“用户没有足够的网站权限” 然而,我是我试图查询的网站的所有者。我已经检查了www.google.com/webmasters/tools/home,网站已经验证。 所以我在问我的

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

  • 所以我只在索引页上使用href lang,如下所示: 但我在谷歌网站管理员工具中不断得到这些错误 Google检测到您站点上的某些页面错误地实现了rel-alternate-hreflang标记。特别是,似乎存在不正确的语言和地区代码的问题,或者不正确的双向链接(如果页面a用hreflang链接到页面B,那么也必须有从B返回到a的链接)。Google使用hreflang属性在搜索结果中向正确的用户

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

  • 除了为每一个用户设置权限,权限管理员 为连接及其数据库对象的权限提供另一查看方式。注意:只限于 MySQL、Oracle、PostgreSQL、SQL Server 和 MariaDB。 从用户的对象列表工具栏点击 权限管理员 并按照下列步骤进行: 在查看树展开节点直至到达目标对象。 选择对象并点击 添加权限 以打开窗口。 勾选用户以显示网格在右边的面板上。 在网格里,对照在 权限 列出的权限,勾

  • 除了在每个用户中设置权限,“权限管理员”提供另一种方式查看连接和其数据库对象的权限。 【注意】仅适用于 MySQL、Oracle、PostgreSQL、SQL Server、MariaDB 和 MongoDB。 若要添加权限,请在用户对象工具栏点击“权限管理员”并按照下列步骤: 在树视图展开节点直至到达目标对象。 选择对象并点击 “添加权限”以打开窗口。 在左侧窗格勾选用户。 在网格中,对照在“权