13

Facebook 的 Open Graph API 和它的 Graph API 有区别吗?

4

2 回答 2

13

是的,两者之间存在巨大差异。Graph API,引用自文档

Graph API 是获取 Facebook 社交图谱数据进出的主要方式。它是一个基于 HTTP 的低级 API,可用于查询数据、发布新故事、创建签到或应用程序可能需要执行的任何其他任务。Facebook 的大多数其他 API 都基于 Graph API .

简而言之,Graph API 提供了构成任何 Facebook 应用程序核心的 API。鉴于 Facebook 提供了 Open Graph API,因此应用程序可以创建自定义对象(如书籍、音乐或其他根据要求的现实世界对象)以及可以对它们执行的操作(如阅读、聆听)。这让 Facebook 和应用程序更具吸引力。从文档中引用,

Open Graph 让应用程序通过结构化的强类型 API 在 Facebook 上讲述故事。人们使用故事来分享他们正在做的事情、与他们一起做事的人以及他们发生的地方。Open Graph 让您可以将应用程序深度集成到 Facebook 体验中,从而提高参与度、分布和增长。

此外,两者之间的关系可以概括为

Facebook 的 Open Graph 允许您在用户的社交图中定义新的对象和动作,并且您创建这些动作和对象的新实例的方式是通过 Graph API。

于 2013-05-20T11:53:12.177 回答
2

Facebook 文档听起来像是 Open Graph 与 Graph API 完全不同,但 Open Graph 似乎真的是 Graph API 的扩展。如果有任何迹象,您的 API 调用最终都会转到 graph.facebook.com。它们的 API 端点共享相似的语法并受相同的访问规则控制。您将被允许做什么取决于访问令牌中规定的权限。

虽然 Graph API 和 Open Graph 以不同的方式工作并触及不同的事物,但如果我只打算使用 Graph API 或 Open Graph,这不是一种“非此即彼”的场景。您最终可能会同时使用两者或仅使用 Graph API。

您可以将 Graph API 视为执行“传统 Facebooky 事情”的 API 的一部分。如果您只是想发布类似简单状态更新的内容,只需使用 Graph API 将内容发送到 //feed。如果您想创建更复杂的时间线消息来保存您定义的唯一类型数据,请使用 Open Graph。例如,您是一名观鸟者,您想发布更新以说明您看到了某只鸟,并且您想在您的自定义对象中将鸟的种类、颜色和大小显示为属性。

从使用的角度来看,Graph API 和 Open Graph 之间的最大区别在于您可以传递 Facebook 构建所需对象所需的数据的方式。在 Graph API 中,您将要传递的数据发布到 Facebook。在 Open Graph 中,您可以发布数据,也可以向其提供指向您希望 Facebook 从 RDF 元数据标签中抓取内容的资源位置的 URI。

所以,是的,它们有不同之处,但它们也密切相关。

于 2013-11-03T15:20:48.157 回答