我希望能够在JSFiddle中加载Facebook API。这是我的current attempt。
当我跑步时:
window.fbAsyncInit = function() {
FB.init({
appId: 'event-test',
xfbml: true,
version: 'v2.5'
});
};
我收到以下错误:
Uncaught SecurityError:无法在'Document'上设置'domain'属性:禁止为沙盒iframe分配。(匿名函数)@ xd_arbiter.php?version = 42:1
有什么方法可以让它发挥作用吗?
答案 0 :(得分:2)
我对Facebook登录API了解不多。但是,我确实理解您收到错误消息的原因。
如果您将代码放在计算机硬盘上没有jsfiddle的文件中,它应该可以正常工作。
简短的回答:没有办法让这个与jsfiddle上的当前设置一起使用。如果Facebook有不同的API可以做同样的事情,你可以尝试寻找另一种Facebook API。
答案很长: Sandbox是一个属性,分配给iframe标记以用于父页面的安全措施。 JsFiddle使用沙箱为父页面提供安全性。您的小提琴结果将加载到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中运行。