मैं एक ऐप विकसित कर रहा हूं जो उपयोगकर्ताओं को Google API v3 का उपयोग करके अपना Google Analytics डेटा देखने की अनुमति देता है। मैंने जो भी शोध किया है, वह यह इंगित करता है कि उपयोगकर्ताओं को अपने Google खातों में लॉगिन करने की आवश्यकता है और मैं एपीआई से पूछताछ शुरू करने से पहले अपने ऐप को एक्सेस प्रदान कर सकता हूं; हालांकि, यह वही नहीं है जो मैं चाहता हूं, मुझे अपने उपयोगकर्ताओं को अपने स्वयं के Analytics डेटा देखने की आवश्यकता है। मेरे डेटा तक पहुंचने के लिए एपीआई को अधिकृत कैसे कर सकता है। मेरे पास क्लाइंट आईडी और क्लाइंट सीक्रेट है, लेकिन Google के एपीआई v3 द्वारा लागू ओएथ एक प्राधिकरण टोकन मांग रहा है, जिसे उपयोगकर्ता को अपने Google खाते में लॉगिन करने के लिए ही प्राप्त किया जा सकता है (क्या यह सही है?) क्या वहां है अपने स्वयं के Google Analytics खाते में लॉगिन करने और उपयोगकर्ताओं को उस जानकारी को प्रदर्शित करने का एक तरीका?Google Analytics API v3 प्रमाणीकरण मेरे डेटा तक पहुंच की अनुमति देने के लिए
उत्तर
आप ऑफलाइन एक्सेस के लिए refresh token
का उपयोग कर सकते हैं। एक बार जब आप refresh token
प्राप्त कर लेंगे, तो आप इसे किसी फ़ाइल या डेटाबेस में सहेज सकते हैं और प्राधिकरण रीडायरेक्ट किए बिना डेटा तक पहुंचने के लिए इसका उपयोग कर सकते हैं।
दस्तावेज़ों में Using a Refresh Token देखें।
यह भी देखें: How can we access specific Google Analytics account data using API?
मुझे लगता है कि एक और मजबूत समाधान के लिए आपको सेवा खाता उत्तर – mattl
@mattl के साथ जाना चाहिए, मुझे नहीं लगता कि यह वोट डाउन करने का एक कारण है। जवाब गलत नहीं है, यह Google ऑफ़र विकल्पों में से एक है। –
आप सही हैं मुझे खेद है। मैं इसे अब नहीं बदल सकता क्योंकि यह 20 घंटे से अधिक हो गया है। क्या कोई और फिर से ऊपर उठा सकता है। – mattl
मेरा मानना है कि आप क्या करना एक सेवा खाता की स्थापना की है चाहता हूँ: https://developers.google.com/analytics/devguides/config/mgmt/v3/mgmtAuthorization
"स्वचालित/ऑफ़लाइन/अनुसूचित Google Analytics डेटा के लिए उपयोग करने के लिए उपयोगी अपना खुद का खाता। उदाहरण के लिए, अपने स्वयं के Google Analytics डेटा का लाइव डैशबोर्ड बनाने और इसे अन्य उपयोगकर्ताओं के साथ साझा करने के लिए।
कुछ चरणों के लिए आपको आवश्यकता है Google Analytics के साथ काम करने के लिए सेवा खातों को कॉन्फ़िगर करने के लिए llow:
- एपीआई कंसोल में एक प्रोजेक्ट पंजीकृत करें।
- एपीआई एक्सेस फलक के तहत, Google एपीआई कंसोल में, क्लाइंट आईडी बनाएं, जो कि सेवा प्रकार पर एप्लिकेशन प्रकार सेट के साथ है।
- Google Analytics में साइन-इन करें और व्यवस्थापन अनुभाग पर नेविगेट करें।
- वह खाता चुनें जिसके लिए आप एप्लिकेशन को तक पहुंच प्राप्त करना चाहते हैं।
- चयनित Google Analytics खाते के उपयोगकर्ता के रूप में चरण # 2 से कंसोल एपीआई कंसोल में बनाए गए क्लाइंट आईडी से ईमेल पता जोड़ें।
- Google Analytics डेटा तक पहुँचने के लिए सेवा खाते के लिए निर्देशों का पालन करें: https://developers.google.com/accounts/docs/OAuth2ServiceAccount "
यहाँ एक पूर्ण गूगल एनालिटिक्स सेटअप नोट सहित सेवा खाते के साथ उदाहरण के कार्यान्वयन रिपोर्टिंग है बस अपने प्रश्न पढ़ने के बाद यह लिखा था, मैं। मैं ठीक उसी प्रश्न मिल गया है एक ही समस्या थी।
<?php
// Service account code from http://stackoverflow.com/questions/18258593/using-a-service-account-getaccesstoken-is-returning-null
// Analytics code from https://code.google.com/p/google-api-php-client/source/browse/trunk/examples/analytics/simple.php?r=474
require_once 'google-api-php-client/src/Google_Client.php';
require_once 'google-api-php-client/src/contrib/Google_AnalyticsService.php';
// Set your client id, service account name (AKA "EMAIL ADDRESS"), and the path to your private key.
// For more information about obtaining these keys, visit:
// https://developers.google.com/console/help/#service_accounts
const CLIENT_ID = 'CLIENT ID';
const SERVICE_ACCOUNT_NAME = 'SERVICE ACCOUNT NAME (IS "EMAIL ADDRESS")';
const KEY_FILE = 'KEY FILE';
const SCOPE = 'https://www.googleapis.com/auth/analytics.readonly';
// OPEN GOOGLE ANALYTICS AND GRANT ACCESS TO YOUR PROFILE, THEN PASTE IN YOUR SERVICE_ACCOUNT_NAME
$key = file_get_contents(KEY_FILE);
$auth = new Google_Auth_AssertionCredentials(
SERVICE_ACCOUNT_NAME,
array(SCOPE),
$key
);
$client = new Google_Client();
$client->setScopes(array(SCOPE));
$client->setAssertionCredentials($auth);
$client->getAuth()->refreshTokenWithAssertion();
$accessToken = $client->getAccessToken();
$client->setClientId(CLIENT_ID);
$service = new Google_Service_Analytics($client);
?>
<!DOCTYPE html>
<html>
<head>
<title>Google Experiments Dashboard</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link href="//netdna.bootstrapcdn.com/bootstrap/3.0.0/css/bootstrap.min.css" rel="stylesheet" media="screen">
</head>
<body class="container">
<h1>Your experiments</h1>
<table class="table"><tr><th><th>Experiment<th>Page<th>Started<th>Status
<?php
$progressClasses = array('progress-bar progress-bar-success','progress-bar progress-bar-info','progress-bar progress-bar-warning', 'progress-bar progress-bar-danger');
$profiles = $service->management_profiles->listManagementProfiles("~all", "~all");
foreach ($profiles['items'] as $profile) {
$experiments = $service->management_experiments->listManagementExperiments($profile['accountId'], $profile['webPropertyId'], $profile['id']);
foreach ($experiments['items'] as $experiment) {
echo "<tr>";
if ($experiment['status'] == 'RUNNING')
echo '<td><a class="btn btn-xs btn-success"><i class="glyphicon glyphicon-ok"></i></a>';
else
echo '<td><a class="btn btn-xs btn-danger"><i class="glyphicon glyphicon-remove"></i></a>';
$expHref = "https://www.google.com/analytics/web/?pli=1#siteopt-experiment/siteopt-detail/a{$profile['accountId']}w{$experiment['internalWebPropertyId']}p{$experiment['profileId']}/%3F_r.drilldown%3Danalytics.gwoExperimentId%3A{$experiment['id']}/";
echo "<td><a href='$expHref' target='_blank'>{$experiment['name']}</a>";
echo "<td>{$experiment['variations'][0]['url']}";
echo "<td>".date('Y-m-d',strtotime($experiment['startTime']));
echo "<td>";
echo '<div class="progress" style="width:400px">';
foreach ($experiment['variations'] as $i => $variation) {
echo '<a href="'.$variation['url'].'" target="_blank"><div class="'.$progressClasses[$i].'" role="progressbar" style="width: '.(100*$variation['weight']).'%">'.$variation['name'].'</div></a>';
}
echo '</div>';
}
}
?>
वह कोड मेरे लिए काम करता है ... Google_AssertionCredientials => Google_Auth_AssertionCredentials और Google_AnalyticsService => Google_Service_Analytics – Graben
के बाद से क्लास नाम बदल गए हैं, धन्यवाद, संपादन –
- 1. Google Analytics API V3/OAuth 2
- 2. Google मानचित्र API v3
- 3. Google Analytics API
- 4. Google मानचित्र API V3
- 5. Google मानचित्र API v3
- 6. एएसएमएक्स वेब सेवा अज्ञात पहुंच की अनुमति देने के लिए
- 7. Google मानचित्र API v3
- 8. Google- Analytics API?
- 9. Google मानचित्र API V3
- 10. Google मानचित्र API v3
- 11. Google मानचित्र API V3
- 12. Google मानचित्र API v3
- 13. Google मानचित्र API v3
- 14. Google मानचित्र API V3
- 15. Google Analytics API और .Net
- 16. सर्वर के लिए Google API प्रमाणीकरण
- 17. Google Analytics API V3.0: प्रोग्राम कोड
- 18. Google मानचित्र js api v3
- 19. मैं Google मानचित्र API v3
- 20. Google मानचित्र API V3 - DirectionsRendererOptions और InfoWindow
- 21. Google मानचित्र API v2 बनाम Google मानचित्र API v3?
- 22. Google Analytics से डेटा
- 23. Google डेटा एपीआई प्रमाणीकरण
- 24. Google मानचित्र API V3 विधि fitBounds()
- 25. Google मानचित्र API v3 सभी polylines
- 26. Google स्थल API डेटा संग्रहीत करना - क्या इसकी अनुमति है?
- 27. Google मानचित्र v3 API - ऑटो पूर्ण (पता)
- 28. Github API v3 के
- 29. OAuth 2.0 (google api) प्रमाणीकरण?
- 30. क्या Google मानचित्र API v3 बड़े ज़ूम मानों की अनुमति देता है?
पर अधिक प्रलेखन के साथ कोड टियन ... क्या आपको कोई जवाब मिला? – lpdahito
क्या आपको इसके लिए कोई जवाब मिला? –