javascript – Firefox阻止Facebook Js

随着Firefox升级到42.0我有一些奇怪的行为..

我正在调用这样的FB.init方法

FB.init({ 
        appId: '{$appid}',status: true,cookie: true,xfbml: true,oauth: true
    });

但在Firefox中它被阻止,我收到警告:

https://connect.facebook.net/en_US/all.js”的资源被阻止,因为启用了跟踪保护.

这是认行为,我没有设置任何额外的安全性或其他什么..

该怎么办?

编辑 – 在帮助和谷歌搜索后,这是一个更大的问题:

结果证明Firefox的Do Not Track和跟踪保护是两个独立的事情:

在首选项/选项>中启用了“不跟踪”.隐私> “告诉那些我不想被追踪的网站”.启用发送DNT标头但不阻止任何请求.

在about:config>中启用了跟踪保护功能. privacy.trackingprotection.enabled.启用不会发送DNT标头,但会根据disconnect的阻止列表阻止请求.因此检测2并不像检查navigator.doNottrack那么容易,因为该属性仅设置为1.

解决方案(暂时) – 尝试做FB.init,如果错误做了一些警告..

try {
        FB.init({ 
            appId: '{$appid}',oauth: true
        });
    }catch(err) {
        alert('Some info for the user...');
    }

有人有更好的解决方案吗?

解决方法

从客户端来看,你做不到.这是Firefox的安全策略.您可以在主题https://bugzilla.mozilla.org/show_bug.cgi?id=1226498中阅读有关此问题的信息

相关文章

前言 做过web项目开发的人对layer弹层组件肯定不陌生,作为l...
前言 前端表单校验是过滤无效数据、假数据、有毒数据的第一步...
前言 图片上传是web项目常见的需求,我基于之前的博客的代码...
前言 导出Excel文件这个功能,通常都是在后端实现返回前端一...
前言 众所周知,js是单线程的,从上往下,从左往右依次执行,...
前言 项目开发中,我们可能会碰到这样的需求:select标签,禁...