当我意识到我无法直接在内容脚本中跟踪时。我开始使用后台HTML跟踪我的数据。通过Content Script tracking with Google Analytics
当我设置后台脚本时,我发现它不支持内联脚本。所以我把代码放在一个js文件中并使用" src = filename.js"包括那个。通过chrome extension insert content script on browser action
但最后有一个麻烦:我根本无法加载ga.js,因为它仍然违反规则。这是我得到的:
拒绝加载脚本' https://ssl.google-analytics.com/ga.js' 因为它违反了以下内容安全策略指令: " script-src' self'铬扩展资源:"
我的扩展结构:
有关此问题的详细信息:
background.html:
<html>
<script src="tracker.js"></script>
<body></body>
</html>
tracker.js: (我隐藏了我的ID)
var _gaq = _gaq || [];
_gaq.push(['_setAccount', _gaID]);
_gaq.push(['_trackPageview']);
(function() {
var ga = document.createElement('script');
ga.type = 'text/javascript';
ga.async = true;
ga.src = 'https://ssl.google-analytics.com/ga.js';
var s = document.getElementsByTagName('script')[0];
s.parentNode.insertBefore(ga, s);
})();
感谢您提供任何帮助!
答案 0 :(得分:13)
看起来不错。你走在正确的轨道上。您只需更新manifest.json文件即可从google域下载脚本。
假设您使用带有manifest_version:2
的manifest.json文件。您应该将此行添加到清单
"content_security_policy": "script-src 'self' https://ssl.google-analytics.com; object-src 'self'",
更多信息: