【问题标题】:FB.ui share dialog: “The domain of this URL isn't included in the app's domain”FB.ui 共享对话框:“此 URL 的域不包含在应用程序的域中”
【发布时间】:2018-10-15 16:01:36
【问题描述】:

我尝试使用 Facebook javascript sdk 实现共享对话框。当我打开对话框时,我收到一条错误消息,指出此 URL 的域未包含在应用程序的域中。

我尝试在我的 Facebook 开发人员控制台中的“Facebook 登录 - 有效 OAuth”中添加所有域和所有子域,但也许因为我尝试使用共享对话框,这些域应该添加到其他地方?

注意:我的应用程序实现了 Facebook 登录,我可以确认我在此流程中没有遇到任何问题,登录的域是正确的并且登录工作正常。

我的代码:

FB.ui({
   app_id: 'XXXXXXXXXXX',
   method: 'share',
   href: 'https://something.com'
}, (response: any) => {
   console.log(response);
   });

更新

我遇到的错误信息是英文

应用程序配置不允许给定 URL:一个或多个 应用程序的设置不允许使用给定的 URL。它必须匹配 网站 URL 或画布 URL,或者域必须是 应用程序的域之一。

有趣的是,在我的 Facebook 开发者控制台中,我允许 6 个不同的 URL 作为 OAuth 重定向。我尝试将它们全部指定为redirect_uri 参数,共享对其中两个有效,但对其他四个无效?!!??!

OAuth 允许的 URL(按此顺序)> 共享结果

 https://mymaindomain.com/ > Share ok
 https://mymaindomain.com/something/ > Share ok
 https://mystaging.com/ > Share KO
 https://mystaging.com/something/ > Share KO
 https://m.mystaging.com/ > Share KO
 https://m.mymaindomain.com/ > Share KO

【问题讨论】:

  • 一般 facebook 允许电子邮件和用户个人资料。我认为您需要获得 Facebook 的许可并请求审核您的应用以启用该功能。请在 Facebook 应用程序仪表板上查看 app review 中已批准的项目。
  • @kvk30 很好,但不要认为这与权限有关。不知道与“允许共享”相关的任何权限,此外,我为我的应用使用相同的 Facebook 应用 ID,其中原生 iOS 和 Android 共享功能都可以
  • 你能给我你想分享的网址吗?
  • @kvk30 不幸的是,与要共享的 URL 无关,尝试使用 google.com 也没有用:(

标签: angular facebook facebook-javascript-sdk


【解决方案1】:

我遇到了同样的问题,但我已经解决了。

我的解决方案:

  1. 打开脸书APP。
  2. 设置 -> 基本
  3. 设置应用程序域 [something.com]
  4. 设置网站 -> 网站网址 -> [https://something.com]

【讨论】:

  • 这是正确答案。它适用于我,您无法添加 localhost,但它适用于您的登台和生产环境。
【解决方案2】:

我选择了“发送”选项而不是“分享”选项,这似乎更可靠

 FB.ui({
      method: 'send',
      link: 'https://something.com',
      app_id: XXXXXXXXXXX'
 }, (response: any) => {
      console.log(response);
 });

【讨论】:

    猜你喜欢
    • 2018-09-06
    • 1970-01-01
    • 2016-09-01
    • 2018-03-27
    • 2018-03-30
    • 2020-07-04
    • 2018-08-30
    • 1970-01-01
    相关资源
    最近更新 更多