我正在使用OAuth2身份验证,我有一个拥有多个用户的CMS,每个用户都有自己的配置文件.我们公司的Google帐户可以访问多个Google Analytics帐户.对于使用CMS的每个用户,我使用不同的用户名连接到Google AnalyticsAPI,每个用户的令牌都保存在数据库数据存储中.问题是,如果一个用户断开连接并撤消其令牌,则使用相同Google帐户的其他任何用户都无法访问Analytics API,这没有任何意义.

编辑:经过进一步调查,我发现当第一个用户进行身份验证时,保存在数据存储中的令牌包含'refresh_roken'和'access_token'.但是,当其他用户进行身份验证时(他们使用相同的Google帐户,但使用不同的Google Analytics帐户),他们的令牌只会包含"access_token".如果其中一个人撤销了他的令牌,他们就会失去联系.
如何阻止这种情况发生并让每个用户都收到自己的refresh_token?
编辑2:
我在数据存储中存储单独的行,每个用户一个.让我澄清一下 - 如果你看一下这个图,想象一个CMS,其中一个CMS用户需要查看"Liz的个人账户"的统计数据,另一个CMS用户需要查看"Liz的团队账户"的统计数据.
两个CMS用户都来自同一家公司,他们都使用相同的Google帐户 - "liz@gmail.com".CMS用户A使用"liz@gmail.com"连接到Analytics API,收到refresh_token并想查看"Liz网站"的统计信息.然后CMS用户B也使用"liz@gmail.com"连接到Analytics API,但现在他不再收到refresh_token,只有access_token - 这是一个问题,因为在access_token之后将再次要求用户连接到期.
当一个用户断开连接时我通常做的是从数据存储中删除令牌并撤销令牌,但是我可能不应该撤销它,是吗?在任何情况下,如果在我的场景中用户A断开连接,这将删除他的数据存储令牌,这意味着我们将不再存储refresh_token,因为用户B首先没有它.
用户帐户图:

c# google-api google-analytics-api google-api-dotnet-client google-oauth2
我正在尝试从Google Analytics收集信息,以便为我的网站构建推荐引擎.该网站包含许多网页,因此我会跟踪用户点击的次数,例如,从第A页到第B页.目前我可以A -> B使用previousPagePath = '/A'和测量Google Analytics上的转换nextPagePath = '/B',但问题我真的想回答是,"在包括查看页面A的网站的所有访问中,在同一次访问中查看的页面B,C,...的次数是多少?"
例如,如果流程是A -> homepage -> B,那么我当前的方法不会捕获,但会被更广泛的衡量标准捕获.看起来Google Analytics网络界面上的"访客流"报告中包含我正在寻找的数据,但我无法弄清楚如何通过API以编程方式访问它.
获取此数据的最佳方法是什么?
我使用谷歌分析来跟踪浏览量等,但上周晚些时候我有追踪后端事件的愿望.
我发现了gabba.
我的User模型中有一个方法如下:
def track_ga(event_name, cookiea, cookiez, event_category=nil)
return unless Rails.env.production?
gabba = Gabba::Gabba.new("UA-MYCODE-1", "mywebsite.com")
gabba.identify_user(cookiea, cookiez)
gabba.set_custom_var(1, 'User Email', self.email, Gabba::Gabba::VISITOR)
gabba.set_custom_var(2, 'Private Code', private_code, Gabba::Gabba::VISITOR) if private_code
gabba.event(event_category || "Users", event_name, nil, nil)
end
Run Code Online (Sandbox Code Playgroud)
对我而言,这表明cookie没有正确关联,即它不知道他们之前访问过的位置(在跟踪此事件之前).也许我误解了这份报告的性质,但是,假设我不是,我会喜欢一些关于我哪里出错的建议.
我必须在我的 Android 应用程序中集成 Google Analytics。
完成了它的所有代码但是,有一个问题。
问题是从我的 google 分析帐户中获取跟踪 ID。
根据文件:
==> 要查找 Google Analytics ID(跟踪 ID):
登录您的 Google Analytics(分析)帐户。
单击管理员。
从帐户列的菜单中选择一个帐户。
从属性列的菜单中选择一个属性。
在属性下,单击跟踪信息 > 跟踪代码。您的 Google Analytics ID 显示在页面顶部。
但是,根据步骤编号,我找不到跟踪信息选项或任何跟踪代码:5。
从我在哪里可以得到跟踪ID看起来像这样的:(UA-41888835-6)?
注意:我可以在那里找到属性 ID。
这是我第一次深入了解Google API.我正在尝试按照Google说明进行简单的测试.此时,我已经创建了项目并设置了凭据.继谷歌的指示在这里,我创建了一个测试页面,并复制网页代码完全按照上面的链接上注明.
当我运行页面时,我最初看到一个授权按钮,要求我登录我的帐户.到目前为止,一切都很好.但是,一旦我登录Google,就会收到以下错误:
"{"error": {"code": 400,
"message": "Client project not found. Please pass a valid project.",
"status": "INVALID_ARGUMENT",
"details": [{"@type": "type.googleapis.com/google.rpc.Help",
"links": [{"description": "Google developers console",
"url": "https://console.developers.google.com"
}]
}]
}}"
Run Code Online (Sandbox Code Playgroud)
我已经读过一些我无法找到的内容,也没有提到这个特定的错误.
有人遇到这个错误,或者有任何想法?
谢谢!
GA4 API 中没有 \xe2\x80\x9c 浏览器版本\xe2\x80\x9d 维度:https://developers.google.com/analytics/devguides/reporting/data/v1/api-schema#dimensions
\n\n而在支持文章中说:
\n\n\n作为此更改的一部分,客户将不再知道 Google Analytics 中 Chrome 的确切颠覆,但仍会知道浏览器和主要版本号。
\n
它在控制台的哪里?
\n有趣的是,在探索区域中存在这个维度:\n
第二个问题是:如何解释这种不平等以及如何在 API/报告中获取这个维度?
\n我正在开发一款应用,允许用户使用Google API v3查看自己的Google Analytics数据.我研究过的所有内容似乎都表明,在我开始查询API之前,用户需要登录自己的Google帐户并授予我的应用访问权限; 但是,这不是我想要的,我只需要我的用户查看我自己的Google Analytics数据.如何授权API访问我的数据.我有客户端ID和客户端密码,但是由Google的API v3实施的OAuth要求授权令牌,只能通过让用户登录他们的谷歌帐户来获取(是吗?)有没有办法只需登录我自己的Google Analytics帐户并向用户显示该信息?
我想知道用户的活跃程度取决于他们在注册之前来自的流量来源/媒介/广告系列.当我试图通过JS中的Google Analytics跟踪器获取当前访问的广告系列/来源/媒介时,我正在闯入墙壁.
我找到了这种tracker.get()方法:https://developers.google.com/analytics/devguides/collection/analyticsjs/method-reference#get但他们没有指定'fieldName'的可能值.我在Firebug中检查了跟踪器对象,发现屏幕附带的屏幕抓取:

这些是我可以查询的唯一字段吗?是否可以阅读任何广告系列字段?我知道GA打算匿名,但我认为这些信息并不是真正的秘密......
如果我无法从GA跟踪器中检索此信息,您将如何处理此问题?我是否应该在访问utm_参数时设置自己的cookie,然后在访问者选择注册时阅读它?
我知道这个回复:如何使用Javascript从Cookie中提取Google Analytics广告系列数据?但评论说解析cookie不适用于AdWords流量..
我正在开发一个应用程序,其中每个"业务"都有自己的页面(或者更多的页面):
例如,例子.COM /业务/ ABC /
因此,对于系统中登录的业务所有者,我想提供一个功能"查看页面分析".它将显示特定页面有多少次访问(可能还有其他一些事情).
有没有办法使用Google Analytics API和我的约束来执行此操作:
我一直在研究这个话题几个小时试图提出一个解决方案,但无法弄清楚任何事情.
这是我尝试过的以及发生在我身上的问题:
gapi.analytics.auth.authorize({
container: 'auth',
clientid: 'xxx.apps.googleusercontent.com',
serverAuth: {
access_token: 'Server side generated token'
}
});
Run Code Online (Sandbox Code Playgroud)
代替
gapi.analytics.auth.authorize({
container: 'auth',
clientid: 'xxx.apps.googleusercontent.com',
});
Run Code Online (Sandbox Code Playgroud)
效果并不像我预期的那样.该示例不再显示(我无法看到我的数据),但我可以在Chrome的Netowrking部分看到它实际上是从GA接收真实数据.但由于未知原因,没有任何东西出现.
我试图避免的是构建一个解决方案,我需要构建服务器端代码,查询GA以获取数据,将其提供给前端,然后JS负责显示它.我宁愿使用Embed API,但它似乎不适合我不希望用户使用他们的UA数据但是我自己的UA数据仅限于某个范围的用例.我想至少解决了解决方案的前端或后端部分.该解决方案甚至不需要基于Google Analytics.任何其他可以让我轻松实现用例并让企业主看到他们的营销(流量,销售)效果的其他东西也会很有趣.
有关:
TLDR:向我的客户显示我的GA数据的子集,而不强迫他们成为GA用户并将其添加到我的GA帐户.
任何帮助赞赏!
我为google analytics api v4设置了所有内容,如下所述:
https ://developers.google.com/analytics/devguides/collection/android/v4/
,此处:
http ://www.javacodegeeks.com/2014 /04/working-with-google-analytics-api-v4-for-android.html
我可以看到实时数据,但我无法在特定时间段内看到屏幕,活动用户,新用户和顶级设备模型,例如"所有时间".
Analytic不发送屏幕视图.
这是我的global_tracker.xml
<string name="ga_trackingId">UA-XXXXXXXX-Y</string>
<integer name="ga_sessionTimeout">300</integer>
<bool name="ga_autoActivityTracking">true</bool>
<bool name="ga_reportUncaughtExceptions">true</bool>
<screenName name="com.org.ScreenActivity1">Screen 1</screenName>
<screenName name="com.org.ScreenActivity2">Screen 2</screenName>
Run Code Online (Sandbox Code Playgroud)
这是我的AndroidManifest.xml
<meta-data
android:name="com.google.android.gms.version"
android:value="@integer/google_play_services_version"/>
<meta-data
android:name="com.google.android.gms.analytics.globalConfigResource"
android:resource="@xml/global_tracker"/>
Run Code Online (Sandbox Code Playgroud)
这是我的Analytics.java
public enum TrackerName {
APP_TRACKER, // Tracker used only in this app.
GLOBAL_TRACKER // Tracker used by all the apps from a company. eg: roll-up tracking.
}
HashMap<TrackerName, Tracker> mTrackers = new HashMap<TrackerName, Tracker>();
public Analytics() {
super(); …Run Code Online (Sandbox Code Playgroud) java android google-analytics google-analytics-api google-analytics-firebase