Google Analytics会将跟踪发送到国家/地区域,因此会被CSP阻止

Ale*_*x K 6 javascript google-analytics meteor content-security-policy

我嵌入了这样的分析:

<script type="text/javascript" async="" src="http://www.google-analytics.com/plugins/ua/linkid.js"></script>
Run Code Online (Sandbox Code Playgroud)

然后我将一些谷歌域名添加到CSP中,如下所示:

BrowserPolicy.content.allowScriptOrigin("*.google-analytics.com");
BrowserPolicy.content.allowImageOrigin("*.google.com");
Run Code Online (Sandbox Code Playgroud)

这样可以很好地加载,但是一旦Google Analytics尝试发送一些跟踪信息,它有时会尝试从google.pl加载图片(基于位置).有没有办法确保只使用.com?我显然无法列出CSP标头中的所有谷歌域名.

确切的错误是:

拒绝加载图片" https://www.google.pl/blabla ",因为它违反了以下内容安全策略指令:"img-src data:' self'http://*.doubleclick.net https://*.doubleclick.net http://*.facebook.com https://*.facebook.com http://*.google.com https://*.google.com http://www.google-analytics .com https://www.google-analytics.com ".

如果它很重要,这里使用的框架是:Meteor 1.3.5.1和浏览器策略包browser-policy@1.0.9

Mār*_*dis 1

一种解决方案是使用 Geo IP 来尝试猜测域。您可能总是可以动态地包含 .com 和国家/地区域名,但我怀疑这是否是一个可靠的解决方案。