【问题标题】:Clicking "share" button on facebook page widget throws error on iOS 9单击 Facebook 页面小部件上的“共享”按钮会在 iOS 9 上引发错误
【发布时间】:2016-04-11 03:08:26
【问题描述】:

我在我的网站上包含官方Facebook Page Plugin不是我自己的应用程序)。该插件显示为顶部带有“共享”按钮的小部件。在 Chrome、Firefox、iOS 8.4 Safari 上,单击它会转到共享页面。但是在 iOS 9.2 Safari 上(在 iPhone 6 上),单击该共享按钮会显示一个带有错误的页面:

应用程序未设置。此应用程序仍处于开发模式,您无权访问它。切换到已注册的测试用户或向应用管理员请求权限。

为了消除任何其他代码,我制作了一个扁平的 HTML 页面,其中只有 Facebook 代码,它仍然这样做。

是什么原因造成的?

【问题讨论】:

  • @JonKoops 这不是重复的。这不是我的应用程序。这是官方的 Facebook 页面插件。
  • 您仍然需要注册您的应用程序(Facebook 页面)。当您按下“获取代码”按钮时添加了应用 ID。
  • @JonKoops 我该怎么做?我在页面上没有看到任何允许这样做的地方。
  • 脚本中的某些内容应如下所示:js.src = "//connect.facebook.net/en_US/sdk.js#xfbml=1&version=v2.5&appId=*12345678*
  • @JonKoops 这表明您不需要 facebook 开发帐户或任何可以在网络上使用的东西:developers.facebook.com/docs/plugins/faqs/#developer-account

标签: javascript html ios facebook facebook-widgets


【解决方案1】:

出于某种原因在 iOS 9 Safari 上(不在 iOS 8 或 Android 或桌面浏览器上)Facebook 的页面插件在没有公共应用 ID 的情况下将无法工作。在所有其他浏览器/平台上,您可以直接从他们的社交插件网站复制代码(通过“获取代码”按钮),它会起作用。

但在 iOS 9 Safari 中,iframe 中 Facebook 的分享按钮仅在您创建应用程序时才有效,单击“是”即可“您想让该应用程序及其所有实时功能对公众开放吗?” 在应用设置下,然后将该应用 ID 传递给 JavaScript 源调用。

可能发生是因为在 iOS 9 中,因为它试图在 Facebook 应用程序而不是浏览器中打开。这会跨入“应用环境”并因此改变 Facebook 的要求,尽管他们会因错误将您踢回 safari。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-07-01
    • 1970-01-01
    • 2020-08-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多