我如何判断网络资产是否被删除使用谷歌分析服务



我正在使用Google Analytics API从我的Analytics帐户获取网络属性信息。

当我登录analaytics时,我只有一个网站,但通过api,我得到了几个(旧的和删除的网站)

我的代码是这样的:

        var provider = new WebServerClient(GoogleAuthenticationServer.Description)
                           {
                               ClientIdentifier = _appId,
                               ClientSecret = _appSecret
                           };
        var auth = new OAuth2Authenticator<WebServerClient>(provider, x => new AuthorizationState { AccessToken = token });
        var analyticsService = new AnalyticsService(auth);
        var accounts = analyticsService.Management.Accounts.List().Fetch();
        foreach (var account in accounts.Items)
        {
            var webProperties = analyticsService.Management.Webproperties.List(account.Id).Fetch();
            // todo: determine if web property is still in use?
        }

从代码中如何判断哪些仍然处于活动状态?

所以经过更多的挖掘。

似乎没有标志或类似的东西表明它已被删除,但如果您继续深入研究结果集,您会注意到在配置文件级别,没有子项的配置文件似乎是已删除的配置文件。

这是有道理的,

我想不会有与已删除的配置文件相关联的配置文件。

var provider = new WebServerClient(GoogleAuthenticationServer.Description)
                           {
                               ClientIdentifier = _appId,
                               ClientSecret = _appSecret
                           };
        var auth = new OAuth2Authenticator<WebServerClient>(provider, x => new AuthorizationState { AccessToken = token });
        var analyticsService = new AnalyticsService(auth);
        var accounts = analyticsService.Management.Accounts.List().Fetch();
        var result = new List<Profile>();
        foreach (var account in accounts.Items)
        {
            var webProperties = analyticsService.Management.Webproperties.List(account.Id).Fetch();
            foreach (var webProperty in webProperties.Items)
            {
                var profiles = analyticsService.Management.Profiles.List(account.Id, webProperty.Id).Fetch();
                if (profiles.Items != null && profiles.Items.Any())
                {
                    // these are the ones we want
                    result.AddRange(profiles.Items);
                }
            }
        }
    }

相关内容

  • 没有找到相关文章

最新更新