Javascript 在JSFIDLE中加载Facebook API

Javascript 在JSFIDLE中加载Facebook API,javascript,facebook-graph-api,jsfiddle,Javascript,Facebook Graph Api,Jsfiddle,我希望能够在JSFIDLE中加载Facebook API。这是我的 当我跑步时: window.fbAsyncInit = function() { FB.init({ appId: 'event-test', xfbml: true, version: 'v2.5' }); }; 我得到以下错误: 未捕获安全性错误:未能在“文档”上设置“域”属性:沙盒iFrame禁止赋值。(匿名函数)@xd_arbiter.php?version=42:1 有什么方法可以让它

我希望能够在JSFIDLE中加载Facebook API。这是我的

当我跑步时:

window.fbAsyncInit = function() {
  FB.init({
    appId: 'event-test',
    xfbml: true,
    version: 'v2.5'
  });
};
我得到以下错误:

未捕获安全性错误:未能在“文档”上设置“域”属性:沙盒iFrame禁止赋值。(匿名函数)@xd_arbiter.php?version=42:1


有什么方法可以让它工作吗?

我对Facebook登录API知之甚少。但是,我确实理解您为什么会收到错误消息

如果不使用JSFIDLE将代码放入计算机硬盘上的文件中,它应该可以工作

简短回答:在JSFIDLE上的当前设置中无法实现这一点。如果Facebook有一个不同的API可以做同样的事情,你可以尝试寻找另一个Facebook API

长答覆: 沙盒是一个属性,可以分配给iframe标记,用于父页面的安全措施。JSFIDLE使用沙箱为父页面提供安全性。您的fiddle结果将加载到iframe中,如下所示:

<iframe name="result" sandbox="allow-forms allow-popups allow-scripts allow-same-origin allow-modals" frameborder="0" src="//fiddle.jshell.net/casebash/j26bq6qf/11/show/"></iframe>


Facebook只是不希望他们的API在沙盒iframe中运行。

我不这么认为。Sandbox是一种安全措施,开发人员在iFrame内部使用它来确保iFrame不能做某些会影响父页面的事情。