什么是Facebook应用程序画布和页面选项卡?

时间:2016-11-22 21:55:03

标签: php facebook facebook-graph-api

我花了很多时间阅读FB开发文档和教程,但我仍然对画布应用和页面标签以及如何使用它们感到困惑。

我期望在我的网站中使用FB SDK是在登录屏幕上有“继续Facebook”按钮,有几个共享和类似的按钮,并在用户允许的情况下向facebook发送通知。我的网站有内部邮件系统,我想通知用户我的网站中发生了新邮件或活动。通过这种方式,用户不必每天都检查我的网站上的重要用户体验活动,因为我预计会有罕见的活动(每周活动很少)。

我已将所有内容都运行但在用户点击通知后,他将被带到画布应用。 FB文档和教程侧重于代码示例,但我没有找到关于什么画布应用程序的任何描述。如果没有这种基本的理解,我无法完成我的通知逻辑,无法理解所涉及的术语,如“安全的画布网址”,并且基本上对用户体验(我希望尽可能做出来)感到自信。

如果我谷歌“什么是Facebook画布应用程序”我得到“Canvas是一个沉浸式和富有表现力的Facebook体验,让企业能够讲述他们的故事并展示他们的产品。”显然,从下面的评论中可以看出其他的东西......

如果有人可以用简单的词语解释,也许是示例什么是画布应用程序,如果考虑到我的主要目标是通知用户我的网站中的活动到他们的fb帐户,我应该如何使用appreacite。

我正在使用CI框架PHP SDK v5。

1 个答案:

答案 0 :(得分:6)

<强>背景

在Facebook中,您可以创建&#34; apps&#34;在&#34;平台&#34;上运行。作为一个快速,非常简化的摘要,三种主要类型的&#34;平台&#34;应用程序可以运行:

  1. 您托管和控制的网站,但与Facebook Graph API集成(有Facebook登录,发布等),但看起来像普通网站。您可以在自己的服务器上托管这些文件。

  2. 一个旨在坐在Facebook平台上的iFrame内的网站。这些应用程序通常也会与Facebook Graph进行交互。您仍然将它们托管在您自己的服务器上,但是您具有额外的优势,但在页面加载时可以获得有关用户的有限信息。

  3. 独立程序(包括移动应用程序),也与Facebook Graph交互。

  4. 你所谈论的是第二个 - Facebook上的iFrame。

    Facebook提供了两种嵌入应用程序iFrame的方法:

    1. 一个是画布应用。这个Facebook Header,Footer和右边的一些广告的周围很少。它最大化您的空间。 (例如https://apps.facebook.com/candycrush/?fbs=-1&fb_appcenter=1

    2. 另一个是&#34;页面标签&#34; (https://developers.facebook.com/docs/pages/tabs)。这个更小,设计用于公司的Facebook页面&#34;因此空间较小。然而,作为营销人员,它会让所有品牌都更贴近您的公司。 (例如:https://www.facebook.com/NutellaANZ/app/595447743881506/

    3. 请注意,单个应用可以在上述所有内容中运行 - 画布,页面标签和独立的HTML页面。通过一些API的转移,您还可以为移动设备包装相同的代码并放在应用商店中。用户可以登录您的移动应用程序,您可以让他们登录网站,反之亦然(在某些限制内,但您需要探索这些内容)。

      仅限游戏

      你说得对,大多数与应用相关的Facebook文档都是指游戏。 确实,一个好的起点是https://developers.facebook.com/docs/games/gamesonfacebook,现在帮助您了解Canvas应用程序。

      但它不一定是一款游戏 - 只要你使用这些API,任何东西都可行。正如你提到PHP,看看https://developers.facebook.com/docs/php/howto/example_access_token_from_canvas - 没有提到游戏,但是你是如何从PHP中的iFrame获取信息的。 (还有更多的阅读要做!)。

      阅读通知

      点击通知后,Facebook会向网址添加参数。其中一些由通知决定(请参阅https://developers.facebook.com/docs/games/services/appnotifications),其他一些将帮助您获取有关用户的信息(https://developers.facebook.com/docs/reference/login/signed-requesthttps://developers.facebook.com/docs/php/SignedRequest/5.0.0)。

      因此,请使用此信息服务器端来确定用户是谁以及您希望如何处理用户。但是,一旦您进入Facebook生态系统,您想要给用户的体验取决于您。