【发布时间】:2018-03-11 15:02:14
【问题描述】:
我正在尝试在我的 Meteor/NodeJS 网站上加载 Twitter's tracking pixel。
他们提供的代码是:
!(function(e, t, n, s, u, a) {
e.twq ||
((s = e.twq = function() {
s.exe ? s.exe.apply(s, arguments) : s.queue.push(arguments);
}),
(s.version = "1.1"),
(s.queue = []),
(u = t.createElement(n)),
(u.async = !0),
(u.src = "//static.ads-twitter.com/uwt.js"),
(document.body.appendChild(u)));
})(window, document, "script");
twq("init", "MY-TRACKING-ID");
twq("track", "PageView");
它加载正常,但在控制台中返回以下错误:
拒绝执行来自 'https://analytics.twitter.com/i/adsct?p_id=Twitter...' 的脚本,因为它的 MIME 类型 ('text/html') 不可执行,并且启用了严格的 MIME 类型检查。
这与https://twittercommunity.com/t/analytics-tracking-pixel-error-was-blocked-due-to-mime-type-mismatch-x-content-type-options-nosniff/83583/2 完全相同的问题,但是虽然该线程尚未解决,但他现在正在该站点上运行 Twitter 跟踪像素,这表明这是一个服务器配置问题。
查看代码,这个uwt.js file from Twitter 向https://analytics.twitter.com/i/adsct 请求一个脚本,Chrome 阻止该脚本运行。
This answer 表明这是 MIME 类型配置问题(我正在运行 Nginx)或标头问题,但删除 X-Content-Type-Options: nosniff 并重新启动 Nginx 没有效果。
知道如何解决或更好地解决此问题吗?
【问题讨论】:
-
请求的“//analytics.twitter.com/i/adsct?p_id=Twitter”在哪里?
-
查看缩小的 uwt.js 文件。
-
函数中的
e是什么?
标签: javascript nginx twitter