10 月 23 - 25 日,QCon 上海站即将召开,现在购票,享9折优惠 了解详情
写点什么

Facebook 推出 Graph API:语义网的未来?

  • 2010-04-26
  • 本文字数:1951 字

    阅读完需:约 6 分钟

"在我们每天所交付的所有事物背后隐藏着两大重要的主题。"关于最近在旧金山召开的 F8 会议,Facebook 的平台产品总监 Bret Taylor 在 facebook 开发者博客上这样写道。Facebook 在大会上介绍了 Open Graph 协议以及 Graph API,这是 Facebook 平台的下一步革新。

首先,Web 在朝着一个基于人员之间的连接以及他们所关注的事物的模型而演化。第二,这种基于连接的 Web 能够更好地为用户和开发者双方构建和提供价值——底层的连接图只需要被更好的映射为一种更易于使用和互操作的方式。

Facebook 为 Facebook 平台引入了三个新的部件,其中两个是 Open Graph 协议和 Graph API。该 API 提供了对人员,相册,事件等等 Facebook 对象以及这些对象之间诸如朋友,标签,分享内容等等连接之间的访问,通过一个统一而稳定 URI 来访问其表象。每个对象都可以通过 https://graph.facebook.com/ID 这样的 URL 来访问,而这里的 ID 则表示该对象在社交图当中的唯一 ID。而 facebook 对象所支持的每个连接 (CONNECTION_TYPE),可通过使用 https://graph.facebook.com/ID/CONNECTION_TYPE 这样的 URL 来查看。

下面是从 Graph API 页面摘录的一些使用标识符来访问 facebook 对象 (资源) 的 URI 的例子。它从比较高的层次演示了可以如何去使用这些 API。

Facebook 的所有对象都可以用同样的方式来访问:

页面: https://graph.facebook.com/cocacola (可口可乐页面) - 事件 https://graph.facebook.com/251906384206 (奥斯丁 Facebook 开发者车库活动)

[…]

Facebook 社交图包含的所有对象两两间都通过关系而连接起来。Bret Taylor 是可口可乐页面的粉丝,而 Bret Taylor 和 Arjun Banker 是朋友。我们在 API 中将这种关系叫做联系。你可以使用这种的 URL 结构 https://graph.facebook.com/ID/CONNECTION_TYPE 来查看对象之间的这种联系。人员和页面所支持的联系包括:

这一 URI 同时还有一个特殊的标识符me,指代当前的用户。Graph API 使用 OAuth 2.0 来进行授权的 (the 授权指南 对 Facebook 的 OAuth 2.0 实现进行了详细的说明)。

OAuth 2.0 是 OAuth 的简化版本,利用了 SSL 来进行 API 通讯,而不是依赖于复杂的 URL 签名模式和令牌交换。从高级的层面上来说,使用 OAuth 2.0 需要通过转接到 Facebook 为 Facebook 用户获得一个访问令牌。在你获得这个访问令牌之后,你可以通过将令牌包含在 Graph API 请求当中,以该用户的名义来执行授权请求:

网络上的反响普遍是积极的。在一篇名为“超媒体不再复杂”的博文中,Subbu Allamaraju 表示,

阅读 Facebook Graph API 是一种快乐。它避免了行业里许多主流厂商所提供的 Web 服务所陷入的困境。Facebook 的 API 是简单,一致并且交互连接的。这正是 web 真正的精髓所在。

他指出协议和 graph API 是如何来利用超媒体的能力并证明构建连接资源的简单表象的;在这一例子中,Facebook 对象图不需要这么复杂,比如,对于不同类型的资源,API 有些部分可以使用不同的服务来获得,而其它的一些部分则是基于 AtomPub 协议,以及 GData 或 OData 等等扩展。

Ars Technica对于这一声明表示欢迎,认为这是走向开放标准的重要一步。

Facebook 迈向开放标准以及 API 的进步,是由在过去一年加入该公司的一些关键人物所推动的。Facebook 聘用了著名的标准化人士 David Recordon,OAuth 以及 Atom Acitivity 扩展的作者之一。而去年并购中加入 Facebok 的 FriendFeed 工程师,也在 Facebook 开发平台进步的背后提供了极大的帮助。

现受雇于 Facebook 的 David Recordon 在 O’Riely Radar 上说明了为什么这些 API将会为开放 Web 带来益处,并强调他为之激动不已的那些变化;比如实时 API 等特性,对于 OAuth 2.0 的支持,以及开放者不再受 24 小时缓存的限制。他表示:

对于技术人员来说容易仅仅从技术层面去思考开放,但开放性要比这更广泛。技术的开放性意味着其它人可以使用你所使用的同样的工具来构建。而数据的开放性意味着开发者可以基于 API 来构建以前不可能实现的创新性的产品。而人员之间的开放性则意味着当所有的这些能结合起来时,能为人们带来更好的分享信息的方法。

根据 ReadWriteWeb 一篇文章的说法,这对于语义网将有可能产生深远的影响。

Facebook 的声明对我个人而言最激动人心的部分是语义化 Web 的一种可能的突破。

要了解关于如何利用这一 API 的更多细节,请查阅 开发者API 文档

附:Mark Zuckerberg 和Bret Taylor 在F8 上所作的 Keynote

查看英文原文: Facebook’s Graph API: The Future Of Semantic Web?

2010-04-26 04:084775
用户头像

发布了 133 篇内容, 共 42.5 次阅读, 收获喜欢 1 次。

关注

评论

发布
暂无评论
发现更多内容

设计原则 — S 单一职责原则

Lemoon Can

面向对象设计原则 设计原则

高效!启科量子线路模拟器QuSprout与AWS HPC集成,赋能量子计算

启科量子开发者官方号

量子计算

精准管控 | AIRIOT数字油库智能化解决方案

AIRIOT

物联网 数字油库

打造五层轻量监控体系

穿过生命散发芬芳

监控体系 12月月更

行话|入局「软件定义汽车」,你真的准备好了吗?

极狐GitLab

DevOps 汽车软件安全 软件定义汽车 极狐GitLab 汽车软件开发

《媒体大数据分类分级指南》团体标准正式发布,易观分析参与编制

易观分析

大数据 媒体

FLStudio21水果体验版更新下载及功能介绍

茶色酒

flstudio FLStudio21

ArkUI开发趣味体验,快来抽取限量HarmonyOS专属头像!

HarmonyOS开发者

HarmonyOS

【零代码】6步轻松完成 Kafka 实时数据接入 MatrixDB

YMatrix 超融合数据库

json kafka 零代码 超融合数据库 YMatrix

以Amazon Braket SDK和QuTrunk为例介绍量子编程框架

启科量子开发者官方号

量子计算

AWS AMAZON BRAKET与量子计算

启科量子开发者官方号

Spring AOP在项目中的典型应用场景

江南一点雨

Java spring aop springboot

Spark RDD分区数与分区器源码解析

数新网络官方账号

spark

数据治理:数据访问也需要治理!

用友BIP

网络安全之反序列化漏洞分析

网络安全学海

黑客 网络安全 信息安全 渗透测试 漏洞挖掘

如何打造用户“上瘾”的产品?

产品海豚湾

产品经理 用户体验 产品运营 用户思维 12月月更

谁能通俗的解释下,什么是云服务器?

Finovy Cloud

服务器 云服务器 云渲染 云渲染农场

建立数据地图,让数据资产“活”起来

数造万象

有奖征文 | 当我们谈操作系统时,我们在谈什么?

腾源会

开源 操作系统 opencloudOS

一块钱能做什么?

白洞计划

金融行业业财融合实践:5A全面预算管理,赋能金融企业高质量发展

B Impact

知识图谱与古希腊人物关系

数新网络官方账号

知识图谱

NGINX 开源社区捉虫征集令

NGINX开源社区

LinkedIn创始人对话 OpenAI CEO :创业公司的机会—价值中间层

B Impact

读者回信:为什么畅捷通可能会迎来戴维斯双杀?

B Impact

Renderbus瑞云渲染正式支持UE云渲染!离线渲染+实时渲染=渲染起飞!

Renderbus瑞云渲染农场

UE5 Renderbus瑞云渲染 3D制作软件

架构实战 模块一:作业

Geek_6c89ef

BSN-DDC基础网络DDC SDK详细设计(八):示例

BSN研习社

BSN-DDC

SeaweedFS 高可用方案最佳实践

冰心的小屋

分布式文件系统 SeaweedFS

Verilog 数据类型

芯动大师

Verilog Verilog数据类型 Verilog语法

2022年双碳背景下汽车行业发展洞察

易观分析

汽车 双碳

Facebook推出Graph API:语义网的未来?_SOA_Dilip Krishnan_InfoQ精选文章