Javascript Setup application.js或ga.js或初学者';谷歌分析指南?

Javascript Setup application.js或ga.js或初学者';谷歌分析指南?,javascript,php,html,yii,google-analytics,Javascript,Php,Html,Yii,Google Analytics,很抱歉在这里问这个问题,这里是否有一个完整指南的链接,或者是google analytics示例设置指南?我所能看到的只是设置注册和获取跟踪代码。然后就结束了。我还有其他问题 当把代码放在标题之前时,我读到当页面加载时,代码会运行。那么,访问同一站点的不同页面是否被视为不同的视图?e、 g访问mysite.com,然后是mysite.com/info,然后是mysite.com/contacts。这是否发送/创建3个不同的页面视图?我怎样才能做到只有一个?如果是同一个用户,只是浏览了不同的部分

很抱歉在这里问这个问题,这里是否有一个完整指南的链接,或者是google analytics示例设置指南?我所能看到的只是设置注册和获取跟踪代码。然后就结束了。我还有其他问题

  • 当把代码放在标题之前时,我读到当页面加载时,代码会运行。那么,访问同一站点的不同页面是否被视为不同的视图?e、 g访问mysite.com,然后是mysite.com/info,然后是mysite.com/contacts。这是否发送/创建3个不同的页面视图?我怎样才能做到只有一个?如果是同一个用户,只是浏览了不同的部分

  • 我可以问一下如何获得这些观点的样本吗?当我访问api站点时,我只能看到指标。没有样本格式,我是一个完整的noob。在这种情况下,我有一个站点
    monitoringSite.com
    ,我想从那里请求
    mysite.com
    的页面视图。我真的只想要唯一的用户页面视图。我真的希望有一个请求或请求代码的示例

      $this->curl('https://googleanalytics.com/idontknowwhattoputhere');
    
    对于每个请求,是否需要登录数据

  • 我实际上已经创建了一个帐户,并获得了UA-XXXXX-X代码,我不知道下一步该怎么办。我没有把ga.js放在
    mysite.com
    上,但是放好之后,它会自动开始发送,并且可以通过请求获得视图(如果我已经知道如何请求的话)


    谢谢。

    说到你的观点1:是的,谷歌会将每个页面视图作为页面视图进行跟踪(有意行为?;)。但它还能够向您显示独特的访问者,例如(或新访问者),这应该是您想要的

    第2点:首先,我想确保,您知道,有一个可以查看数据的平台,不需要任何API。 然后我想确保,你知道有for,这使得不必知道确切的URL。然后,在您验证后,您不需要库或接口,我将编辑文章

    编辑: 好的,这里还有一个你想要的分类:访问量(它不同于页面浏览量),你可以看到,它们是如何计算的;基本上,一次新的访问是在30分钟的不活动或某些其他合理条件下进行的

    关于普通API的事情;此网站应该是您正在寻找的:

    我能给你的所有信息都写在那里

    编辑2: 最后这里是一个工作示例(当然替换了placeholding常量):


    谢谢,是的,新访客就是我想要的。:)。关于获取数据,我实际上想在我的监控站点中显示我想要的数据。所以我想要json格式的数据,并且只想过滤新访问者的数据,也许还可以进一步过滤特定日期范围的数据。图书馆很好,但我只需要一些数据,不需要很多东西。这就是为什么我想知道发送请求的url以及成功获取数据所需的任何其他信息。此外,ga.js已经在网站上安装好了。我有UA-XXXXX-X代码和谷歌账户。。问题是我不知道如何请求数据。在你提到的“新访客”中,他们是否基于IP地址?用户成为新访问者需要多长时间?如果同一用户第二天访问该网站,他是否会成为“新访问者”?“我真的想让他成为一个新的访客。”米卡萨补充了承诺的编辑,希望这就是你要找的。很好的链接。所以我会把你的答案加起来。但仍然无法正确获取数据:(.简而言之,我的问题是,在google analytics上获取站点唯一页面视图的最简单方法是什么?我已经获得了客户端id,创建了一个帐户,但我无法通过php curl访问或获取oauth令牌。我所需要的只是正确的curl:(.文档没问题,但设置的步骤却不是。我想要的只是一些单一的数据。:(对不起,这里没有。@MikaSa没问题,我可以自己使用它。我需要的授权部分的所有信息都来自谷歌的文档,也是$jwt的第一部分。我通过我已经发布的链接找到了该网站:授权指南)-在“服务帐户”链接处阅读后,链接到此处。
    
    <?php
    
    class GoogleAnalytics {
    
        // Replace those
        const MAIL = '1234567890@developer.gserviceaccount.com';
        const PRIVATE_KEY_PATH = '/home/matmarbon/path/to/your/'.
                '1234567890abcdef1234567890abcdef12345678-privatekey.p12';
        const VIEW_ID = 12345678;
        const CURLOPT_SSL_VERIFYPEER = false;// ATTENTION: THIS MIGHT BE DANGEROUS!
    
        // Don't replace those
        const AUTHURL = 'https://accounts.google.com/o/oauth2/token';
        const SCOPE = 'https://www.googleapis.com/auth/analytics.readonly';
    
        public function curl($url, $post, $params) {
            $ch = curl_init();
            if($post) {
                $query = '';
                foreach($params as $k => $v)
                    $query .= $k.'='.urlencode($v).'&';
                rtrim($query, '&');
                curl_setopt_array($ch, array(
                    CURLOPT_POST => count($params),
                    CURLOPT_POSTFIELDS => $query
                ));
            } else if($params) {
                $url .= '?';
                foreach($params as $k => $v)
                    $url .= $k.'='.urlencode($v).'&';
                rtrim($url, '&');
            }
            curl_setopt_array($ch, array(
                CURLOPT_URL => $url,
                CURLOPT_RETURNTRANSFER => 1,
                CURLOPT_SSL_VERIFYPEER => self::CURLOPT_SSL_VERIFYPEER
            ));
            $output = curl_exec($ch);
            if($output === false)
                throw new Exception('Error getting auth code: '.curl_error($ch));
            curl_close($ch);
            return $output;
        }
    
        public function auth($mail,$privateKeyPath,$force=false) {
            if(!$force && !empty($_SESSION['ga_auth']))
                if($_SESSION['ga_auth_time'] > time())
                    return $_SESSION['ga_auth'];
            $jwt = 'eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.';
            $claimset = array(
                'iss' => $mail,
                'scope' => self::SCOPE,
                'aud' => self::AUTHURL,
                'exp' => time() + 60 * 60,
                'iat' => time()
            );
            // utf8_encode ?
            $jwt .= base64_encode(json_encode($claimset));
    
            $c = array();
            $key = file_get_contents($privateKeyPath);
            openssl_pkcs12_read($key, $c, 'notasecret');
            $pkeyid = openssl_get_privatekey($c['pkey']);
            $sgn = '';
            openssl_sign($jwt, $sgn, $pkeyid, "sha256");
            openssl_free_key($pkeyid);
            $jwt .= '.'.base64_encode($sgn);
            $result = json_decode($this->curl(self::AUTHURL,true,array(
                'grant_type' => 'urn:ietf:params:oauth:grant-type:jwt-bearer',
                'assertion' => $jwt
            )), true);
            $_SESSION['ga_auth'] = $result['access_token'];
            $_SESSION['ga_auth_time'] = time() + $result['expires_in'];
            return $result['access_token'];
        }
    
        public function getVisitors() {
            $mail = self::MAIL;
            $privateKeyPath = self::PRIVATE_KEY_PATH;
            $auth = $this->auth($mail,$privateKeyPath);
    
            /// HAVE FUN HERE
            // Example:
            $json = $this->curl('https://www.googleapis.com/analytics/v3/data/ga',
                    false,
                    array(
                        'access_token' => $auth,
                        'ids' => 'ga:'.self::VIEW_ID,
                        'start-date' => '7daysAgo',
                        'end-date' => '1daysAgo',
                        'metrics' => 'ga:visits'
                    ));
    
            return json_decode($json)->totalsForAllResults->{'ga:visits'};
        }
    
    }
    session_start();
    $ga = new GoogleAnalytics();
    echo $ga->getVisitors();