我已经得到了分析工作的代码,以便它能够查询谷歌分析,并带回结果,但是当我试图使用代码查询网站管理员工具时,它会返回权限不足。
支持谷歌的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"
}
}
当您运行第一个时,您会询问用户我可以访问您的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。 若要添加权限,请在用户对象工具栏点击“权限管理员”并按照下列步骤: 在树视图展开节点直至到达目标对象。 选择对象并点击 “添加权限”以打开窗口。 在左侧窗格勾选用户。 在网格中,对照在“权