在 JSFiddle 中加载 Facebook API

Posted

技术标签:

【中文标题】在 JSFiddle 中加载 Facebook API【英文标题】:Loading the Facebook API in JSFiddle 【发布时间】:2016-03-29 08:58:19 【问题描述】:

我希望能够。这是我的current attempt。

当我跑步时:

window.fbAsyncInit = function() 
  FB.init(
    appId: 'event-test',
    xfbml: true,
    version: 'v2.5'
  );
;

我收到以下错误:

未捕获的安全错误:无法在“文档”上设置“域”属性:沙盒 iframe 禁止分配。(匿名函数)@ xd_arbiter.php?version=42:1

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

【问题讨论】:

我不这么认为。沙盒是开发人员在 iframe 中使用的一种安全措施,以确保 iframe 无法执行某些会影响父页面的操作。 【参考方案1】:

我对 Facebook 登录 API 了解不多。不过,我确实理解您收到错误消息的原因。

如果您将代码放入计算机硬盘驱动器上的文件中而不使用 jsfiddle,它应该可以工作。

简短回答:没有办法让它与您当前在 jsfiddle 上的设置一起使用。如果 Facebook 有不同的 API 可以做同样的事情,您可以尝试寻找替代的 Facebook API。

长答案: 沙盒是分配给 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 中运行。

【讨论】:

以上是关于在 JSFiddle 中加载 Facebook API的主要内容,如果未能解决你的问题,请参考以下文章

尝试在 UIWebView 中加载 Facebook 评论插件

在 Android Studio 中加载 Facebook 登录按钮时出现异常

Facebook 如何发布 json 并在 iframe 中加载响应?

Facebook 请求提示未在 Firefox 中加载游戏

Facebook 在 uitableview 中加载相册,但未在下一个收藏视图中打开

如何在 DNN 代码隐藏中加载 Facebook Pixel NoScript 代码?