Google 애널리틱스를 쿼리하고 결과를 다시 가져올 수 있도록 애널리틱스 코드가 있습니다. 그러나 코드를 사용하여 웹 마스터 도구를 쿼리하려고 할 때 불충분 한 권한이 다시 발생합니다.Google 애널리틱스 웹 마스터 도구 불충분 한 권한
구글 사용 API의의는 다음과 같습니다 웹 로그 분석 API, Google 검색 콘솔 API
내가 놓친 거지 뭔가가 있나요?
Google 웹 로그 분석 코드 :
$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"
}
}
웹 마스터 도구는 인증 작업을 요청합니까? – DaImTo
나는 인증을 요청하지 않았는데, 분석 코드와 동일한 코드를 사용하고 있기 때문에 다시 인증 할 필요가 없다고 생각합니다. "code": 403, "message": "Unsufficient Permission" – MrHappySandwich
새로운 사용 가능한 API로 액세스를 제거하고 액세스 권한을 요청해야하는 상황입니까? – MrHappySandwich