Javascript 离线谷歌分析不起作用
我无法让谷歌分析离线工作。我有一名服务人员:Javascript 离线谷歌分析不起作用,javascript,google-analytics,Javascript,Google Analytics,我无法让谷歌分析离线工作。我有一名服务人员: if ('serviceWorker' in navigator) { window.addEventListener('load', () => { navigator.serviceWorker.register('js/OfflineGoogleAnalytics.js') .then(function (registration) { console.log
if ('serviceWorker' in navigator) {
window.addEventListener('load', () => {
navigator.serviceWorker.register('js/OfflineGoogleAnalytics.js')
.then(function (registration) {
console.log('Registered:', registration);
})
.catch(function (error) {
console.log('Registration failed: ', error);
});
});
}
服务工作者在单独的JavaScript文件中注册代码,该文件包含:
importScripts('https://storage.googleapis.com/workbox-cdn/releases/3.3.1/workbox-sw.js');
workbox.googleAnalytics.initialize();
我遵照这些指示:
我正在visual studio中运行一个asp.net核心网站。我通过互联网连接运行该网站,因此它可以在线启动。然后我禁用所有网络适配器以模拟脱机模式,并在各个页面中导航。接下来,我将重新启用网络适配器以重新启用internet访问,然后我将进行更多的导航
离线页面视图从未发送到Google Analytics,我也没有看到它们显示在Google Analytics仪表板中
此外,在Chrome的开发者工具中,我可以看到服务人员正在运行,并且控制台中没有错误
我还需要做些什么才能让离线谷歌分析正常工作?我终于让它正常工作了。我认为服务人员的范围有问题。在Chrome开发工具中,服务人员从未列出任何“客户端”。我将服务人员注册和文件的级别提高了一个级别,并将范围设置为“/”
if ('serviceWorker' in navigator) {
window.addEventListener('load', () => {
navigator.serviceWorker.register('OfflineGoogleAnalytics.js', { scope: '/' })
.then(function (registration) {
console.log('Registered:', registration);
})
.catch(function (error) {
console.log('Registration failed: ', error);
});
});
}