Google chrome extension 在将google optimize与chrome扩展集成时遇到不同的错误

Google chrome extension 在将google optimize与chrome扩展集成时遇到不同的错误,google-chrome-extension,google-analytics,google-tag-manager,google-optimize,Google Chrome Extension,Google Analytics,Google Tag Manager,Google Optimize,我正在尝试使用谷歌标签管理器在chrome扩展上集成谷歌优化。除A/B测试外,我的一切正常: 下面是我用来注入容器的函数 const accountToken=`GTM-XXXXX`; const googleOptimize=`OPT-XXXXX`; 常量解析斯托克=`UA-XXXXXX-X`; 函数integrateGTM(){ console.log(“尝试GTM”); if(!document.querySelector(“body”)){ 返回setTimeout(integrateG

我正在尝试使用谷歌标签管理器在chrome扩展上集成谷歌优化。除A/B测试外,我的一切正常:

下面是我用来注入容器的函数

const accountToken=`GTM-XXXXX`;
const googleOptimize=`OPT-XXXXX`;
常量解析斯托克=`UA-XXXXXX-X`;
函数integrateGTM(){
console.log(“尝试GTM”);
if(!document.querySelector(“body”)){
返回setTimeout(integrateGTM,100);
}
常数传单=`
(函数(a,s,y,n,c,h,i,d,e){s.className+=''+y;h.start=1*新日期;
h、 end=i=function(){s.className=s.className.replace(RegExp('?'+y),'');
(a[n]=a[n]| |[]).hide=h;setTimeout(function(){i();h.end=null},c);h.timeout=c;
})(窗口,document.documentElement,'async-hide','dataLayer',7000,
{${accountToken}:true});`;
常量gtm=`(函数(w,d,s,l,i){
w[l]=w[l]| |[];
w[l].push({“gtm.start”:new Date().getTime(),事件:“gtm.js”});
var f=d.getElementsByTagName[0],
j=d.createElement,
dl=l!=“数据层”?&l=“+l:”;
j、 异步=真;
j、 src=”https://www.googletagmanager.com/gtm.js?id=“+i+dl;
console.log(j.src);
f、 parentNode.insertBefore(j,f);
})(窗口,文档,“脚本”,“数据层”,“${accountToken}”);
`;
常量分析资源=”https://www.google-analytics.com/analytics.js";
常量分析代码=`
(函数(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]| |函数(){
(i[r].q=i[r].q | |[]).push(参数)},i[r].l=1*新日期();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(窗口、文档、“脚本”和https://www.google-analytics.com/analytics.js","ga",;
ga('create','${analyticsToken}','auto');
ga(‘发送’、‘页面浏览’);
`;
常量优化src=`https://www.googleoptimize.com/optimize.js?id=${googleOptimize}`;
控制台日志(fliker,gtm);
常量闪烁=document.createElement(“脚本”);
FLICKER.async=false;
FLICKER.innerHTML=fliker;
文档查询选择器(“头”)。前置(闪烁);
const GTM=document.createElement(“脚本”);
GTM.innerHTML=GTM;
const sOPTIMIZE=document.createElement(“脚本”);
sOPTIMIZE.async=true;
sOPTIMIZE.src=优化src;
常量分析=document.createElement(“脚本”);
const analytics2=document.createElement(“脚本”);
analytics.asyc=真;
analytics.src=分析资源;
analytics2.innerHTML=analyticsCode;
文件查询选择器(“标题”)。附加(GTM);
文档。查询选择器(“标题”)。附加(分析);
文件。查询选择器(“标题”)。附加(分析2);
文件。查询选择器(“标题”)。附加(sOPTIMIZE);
常量代码=``;
const bodyScript=document.createElement(“noscript”);
bodyScript.innerHTML=代码;
document.body.prepend(bodyScript);
}
我甚至在CSP中包含了以下工具:

  "content_security_policy": "script-src 'self' https://www.google-analytics.com https://www.googletagmanager.com https://ajax.googleapis.com; object-src 'self'",
然而,每次进行更改时,在variant debug模式中都会出现以下错误之一:

  • 初始加载后修改的页面
  • 这一经验没有得到应用
  • 此体验在以前的事件中激活
  • Google Tag Manager阻止以下标记在此页面上运行:esc
有时我甚至没有得到任何错误,但实验没有运行

我认为这是因为页面改变了内容,主要是因为扩展将内容注入了另一个网站。我太迷路了