首页 > 解决方案 > ASP.NET Google Reporting API 值与 Google Analytics Dashboard 不同

问题描述

报告

我已阅读此主题:Google Analytics API:为什么 API 数据与 Analytics Dashboard 上看到的不同?但仍然无法弄清楚为什么我的结果与我的 Analytics Dashboard 差异如此之大。

在此处输入图像描述

如果我的响应包含 sampleData,我如何签入 .Net?这是我正在使用的代码:

string[] s = new string[]{"https://www.googleapis.com/auth/analytics.readonly"};

var auth = GoogleAnalyticsServiceAccount.AuthenticateServiceAccount("XXXXX", "D:\\Spawtz\\Src\\client_id.json", s);

// Create the DateRange object.

//DateRange lastWeek = new DateRange() { StartDate = "2018-12-02", EndDate = "2018-12-09" };

DateRange lastMonth = new DateRange() { StartDate = "2018-11-09", EndDate = "2018-12-09" };

DateRange lastYear = new DateRange() { StartDate = "2017-12-09", EndDate = "2018-12-09" };

// Create the Metrics object.

Metric pageViews = new Metric { Expression = "ga:pageViews"};

//Create the Dimensions object.

Dimension pagePath = new Dimension { Name = "ga:pagePath" };

// Create the ReportRequest object.
// Create the ReportRequest object.

ReportRequest reportRequest = new ReportRequest

        {
            ViewId = "XXXXX",
            DateRanges = new List<DateRange>() { lastMonth, lastYear},
            Dimensions = new List<Dimension>() { pagePath },
            Metrics = new List<Metric>() { pageViews },
            FiltersExpression = "ga:pagePath==/cricket-player/t20/playerid=2348"

        };

List<ReportRequest> requests = new List<ReportRequest>();            
requests.Add(reportRequest);

// Create the GetReportsRequest object.

GetReportsRequest getReport = new GetReportsRequest() { ReportRequests = requests };

// Call the batchGet method.

GetReportsResponse response = auth.Reports.BatchGet(getReport).Execute();

我可以在 asp.Net 中设置 SamplingLevel 和 Max-Results 吗?

标签: c#google-analyticsgoogle-apigoogle-analytics-apigoogle-api-dotnet-client

解决方案


是的,您可以为您的报告设置采样级别。它应该是这样的让我知道如果它不起作用我可以测试它。

ReportRequest reportRequest = new ReportRequest
    {
        ViewId = "XXXXX",
        DateRanges = new List<DateRange>() { lastMonth, lastYear},
        Dimensions = new List<Dimension>() { pagePath },
        Metrics = new List<Metric>() { pageViews },

isDataGolden

如果数据已完成处理,则每个报告的响应数据应返回一个名为 isDataGolden 的值。

小费

请记住,如果您希望数据相同,您在仪表板中的请求必须与您向 API 发出的请求完全相同。完全相同的维度、指标和日期。您不能在仪表板中查看包含五个维度的报告,然后向 API 发出请求,仅查看页面浏览量,这些数字不会相加。

        FiltersExpression = "ga:pagePath==/cricket-player/t20/playerid=2348"
        Sampling = "SAMPLINGUNSPECIFIED"
    };

更新

根据您发布的图片,您正在查看具有以下维度和指标的报告。

  • 浏览量

  • 独特的综合浏览量
  • 平均页面停留时间
  • 入口
  • 跳出率
  • % 出口
  • 页值

您对 api 的请求必须发出完全相同的请求,这意味着您需要使用完全相同的维度和指标。


推荐阅读