如果 Facebook Feed 对话框已弃用,您如何在 Facebook 上分享帖子?
Posted
技术标签:
【中文标题】如果 Facebook Feed 对话框已弃用,您如何在 Facebook 上分享帖子?【英文标题】:If Facebook Feed dialog is deprecated, how are you to share posts on Facebook? 【发布时间】:2014-10-09 15:35:29 【问题描述】:我一直在开发 Facebook 应用程序,但我们无法让该应用程序获得批准。我觉得 Facebook 的应用程序审批流程是一个不断变化的目标,他们的解释提供了尽可能少的细节,为进一步的拒绝敞开了大门。
我们正在使用 Facebook 应用为付费墙后面的产品提供共享功能。我们所有的分享按钮都是自定义的,因此它们适合我们的设计(我们不想使用开箱即用的按钮)。我们首先构建了应用程序,尝试将推荐的共享对话框与打开的图形操作和故事一起使用。这里的问题是您只能将共享对话框与共享链接一起使用。 Facebook 读取页面上的任何开放图形标签以提供共享信息,但由于给定页面上有许多不同的“产品”,我们不能使用开放图形标签。由于我们的环境,我们无法使用这些动作或故事。此外,我们希望自定义该共享信息,因此不能使用共享对话框。
不幸的是,当我们第一次尝试批准时,我们将打开的图表故事和操作留在了我们的应用程序中。在我们的第一次否认中,Facebook 告诉我们,我们错误地执行了我们的开放图操作和故事。我们没有使用共享对话框,而是使用 'feed' 方法,该方法在 2.0 中已弃用,但仍然有效。认为 Facebook 查看了我们的应用程序并注意到我们没有正确使用这些操作,我们认为如果我们从应用程序中删除这些故事和操作,Facebook 会看到我们的分享方法有效并批准我们。错了。
我们使用 publish_actions 权限以及 FB.login() 和 FB.ui() 构建了共享。 Facebook 拒绝了我们,因为我们的应用不需要 publish_actions。他们建议我们使用不需要登录或权限的共享对话框。
我们删除了 publish_actions 权限和 FB.login()。当我们对此进行测试时,您仍然可以登录 Facebook 并在没有 fb.login() 的情况下执行共享。所以我们认为这是很好的去。不是; Facebook 告诉我们我们需要实现 login(),即使文档说你不需要需要它。
现在我们已经重新实现了 login() 并且将尝试再次获得批准,但我感觉它会因为 'feed' 方法被弃用而被拒绝。
所以我的问题是: A) 如果您有一个提供付费服务的网站,您如何允许您的用户使用更新的共享方法向他们的订阅源发布您想要的数据?例如:“我刚刚在 teamexos.com 上完成了 Get Moving III 训练!”该帖子将不包含图片或链接。如果必须,可以链接到 teamexos.com。
B) 付费网站如何提供开放式图表操作和故事?他们是否有指向其产品的公共链接?这些产品是否有自己的单独页面,带有自己的开放图形标签?
【问题讨论】:
我也想知道。我的客户的网站没有付费,但他们不希望我们要共享的对象有单独的页面;它们是通过 AJAX + JS 动态填充的,单击其中任何一个都会产生一个弹出窗口,您可以从中分享到各种社交网络。 Facebook 不工作,并以 500 Internal Server Error 拒绝请求。您能否详细说明您是如何自己实现FB.login()
的?我也被困住了,如果你能提供一点帮助,你会非常好。谢谢。
【参考方案1】:
首先,提要对话框没有被弃用,至少现在不再被弃用。您不需要获得任何批准,当然也不需要登录:https://developers.facebook.com/docs/sharing/reference/feed-dialog/
但是:您的示例看起来像一个 Open Graph 故事,您应该考虑看看那些:https://developers.facebook.com/docs/sharing/opengraph
【讨论】:
以上是关于如果 Facebook Feed 对话框已弃用,您如何在 Facebook 上分享帖子?的主要内容,如果未能解决你的问题,请参考以下文章
如何使用已弃用的 api 从 facebook 获得邀请的朋友?