추적 코드를 동적으로 만들 수 있도록 웹 속성을 삽입하는 방법에 대한 문서를 참조하십시오. 목표는 Google 애널리틱스 &에서 Google 애널리틱스를 분석에서 자동으로 Google 웹 로그 분석 계정으로 생성하는 것입니다. 온라인에서 찾을 수있는 것이 거의 없으면이 기능이 허용 목록에 포함 된 것처럼 보입니다. 그래서 나는이 질문을 날씨를 알아 내기 위해 만들고 있습니다. 그렇지 않은 경우입니다. 설명서는 알아 내기가 어렵습니다. 왜냐하면 어떤 필드가 필요한지, 필드가 무엇을 의미하는지 등을 알려주지 않기 때문입니다. 또한 문서가 PHP 라이브러리로 구식 인 것처럼 보입니다. 예제 코드 클래스 이름을 & 메소드 이름으로 바꿔야 만 "작동"할 수있었습니다.(403) 프로젝트에이 기능이 없습니다.
다음은이 기능을 테스트하는 데 사용하는 코드 단편입니다.
<?php
require_once 'Google/Client.php';
require_once 'Google/Service/Analytics.php';
require_once 'Google/Service/Oauth2.php';
session_start();
$client = new Google_Client();
$client->setClientId('xxxxx');
$client->setClientSecret('xxxxxx');
$client->setRedirectUri('xxxxxxxx');
$client->setDeveloperKey('xxxxxxx');
$client->setScopes(
array(
'https://www.googleapis.com/auth/analytics.readonly',
'https://www.googleapis.com/auth/analytics',
'https://www.googleapis.com/auth/userinfo.profile',
'https://www.googleapis.com/auth/analytics.edit',
'https://www.googleapis.com/auth/analytics.manage.users'
)
);
$oauth2 = new Google_Service_Oauth2($client);
if (isset($_GET['code'])) {
$client->authenticate($_GET['code']);
$_SESSION['access_token'] = $client->getAccessToken();
$redirect = 'http://' . $_SERVER['HTTP_HOST'] . $_SERVER['PHP_SELF'];
header('Location: ' . filter_var($redirect, FILTER_SANITIZE_URL));
}
if (isset($_REQUEST['logout'])) {
unset($_SESSION['access_token']);
}
if (isset($_SESSION['access_token']) && $_SESSION['access_token']) {
$client->setAccessToken($_SESSION['access_token']);
}
if (!$client->getAccessToken()) {
$authUrl = $client->createAuthUrl();
print "<a class='login' href='$authUrl'>Connect Me!</a>";
} else {
$analytics = new Google_Service_Analytics($client);
try {
$user = $oauth2->userinfo->get();
$permission = new Google_Service_Analytics_WebpropertyPermissions();
$permission->setEffective(array('EDIT', 'VIEW'));
$trackingObject = new Google_Service_Analytics_Webproperty();
$trackingObject->setAccountId($user['id']);
//$trackingObject->setDefaultProfileId($user['id']);
$trackingObject->setId('UA-xxxxx-1');
$trackingObject->setPermissions($permission);
$trackingObject->setIndustryVertical('INTERNET_AND_TELECOM');
$trackingObject->setLevel('STANDARD');
$trackingObject->setName('xxxxxx');
$trackingObject->setWebsiteUrl('xxxxxx');
$analytics->management_webproperties->insert($user['id'], $trackingObject);
$accounts = $analytics->management_accounts->listManagementAccounts();
echo '<pre>'; print_r($user); echo '</pre>';
echo '<pre>'; print_r($accounts); echo '</pre>';
die();
} catch (apiServiceException $e) {
// Error from the API.
print 'There was an API error : ' . $e->getCode() . ' : ' . $e->getMessage();
} catch (Exception $e) {
print 'There was a general error : ' . $e->getMessage();
}
}
예외는 무엇입니까?
API 탐색기로 게임 해 보셨습니까? https://developers.google.com/analytics/devguides/config/mgmt/v3/mgmtReference/management/webproperties/insert#try-it PHP에 대한 설명서가 만료되었습니다. 새로운 것이 작동합니다. – DaImTo
그래, 필자는 작성한 링크를 따라 작성해야 할 필드를 알려주었습니다. 자신의 테스트 도구를 사용하여 "500 Backend error"메시지를 받거나 내가 직접 호출하면 얻을 수 있습니다. 나는 벌칙을 받고 있는데 매개 변수가 빠져 있거나 잘못 작성하고 있습니다. –
삽입 사용자와 동일한 문제가있어서 결코 작동하지 못했습니다. 저는 이것이 우리가 보낼 필요가있는 것을 정확히 알아 내기 전까지는 API 탐색기를 가지고 노는 경우가 될 것이라고 생각합니다. – DaImTo