16

当我意识到我无法直接在内容脚本中跟踪时。我开始使用后台 HTML 跟踪我的数据。通过Google Analytics 的内容脚本跟踪

当我设置我的后台脚本时,我发现它不支持内联脚本。所以我把代码放在一个 js 文件中,并使用“src=filename.js”来包含它。通过chrome 扩展在浏览器操作上插入内容脚本

但最后有一个问题:我根本无法加载 ga.js,因为它仍然违反规则。这是我得到的:

拒绝加载脚本“ https://ssl.google-analytics.com/ga.js ”,因为它违反了以下内容安全策略指令:“script-src 'self' chrome-extension-resource:”。

我的扩展结构:

  1. 背景.html
  2. 脚本.js
  3. 跟踪器.js

有关此问题的更多信息:

背景.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);
})();

感谢您提供任何帮助!

4

1 回答 1

13

这看起来不错的样子。你在正确的轨道上。您只需要更新 manifest.json 文件以允许从 google 域下载脚本。

假设您使用 manifest.json 文件和manifest_version:2. 您应该将此行添加到清单中

"content_security_policy": "script-src 'self' https://ssl.google-analytics.com; object-src 'self'",

更多信息:

https://developer.chrome.com/docs/extensions/mv2/tut_analytics/

于 2012-10-20T07:05:22.257 回答