没有合适的资源?快使用搜索试试~ 我知道了~
理解_Facebook_应用程序的架构
5星 · 超过95%的资源 需积分: 12 15 下载量 172 浏览量
2011-04-21
13:51:46
上传
评论
收藏 349KB DOC 举报
温馨提示
试读
13页
您可以使用 Flash Platform 构建出各种用户体验。可以使用 Facebook Platform 构建出各种社交体验。将两者合二为一,您可以构建出众的应用程序,将社交能力融入交互性、表达力和响应度极高的应用程序中。 本文介绍了使用 Facebook 和 Flash Platform 的应用程序的架构。它概述了您可以构建的不同类型的应用程序以及这些应用程序如何与您的服务器及 Facebook 服务器进行通信。
资源推荐
资源详情
资源评论
理解 Facebook 应用程序的架构
Jeanette Stallons
stallons.com*
您可以使用 Flash Platform 构建出各种用户体验。可以使用 Facebook
Platform 构建出各种社交体验。将两者合二为一,您可以构建出众的应用程序,
将社交能力融入交互性、表达力和响应度极高的应用程序中。
本文介绍了使用 Facebook 和 Flash Platform 的应用程序的架构。它概述了
您可以构建的不同类型的应用程序以及这些应用程序如何与您的服务器及
Facebook 服务器进行通信。
您可以构建的应用程序类型
您可以构建三种 Flash Platform 应用程序与 Facebook 进行交互:
Facebook 上的应用程序、外部网站应用程序和和桌面应用程序。
Facebook 上的应用程序是您的服务器上托管的、但用户通过
Facebook 网站访问的 Web 应用程序。用户将看到您的应用程序显示
在 Facebook 铬黄中。您访问 Facebook 上的应用程序时(一般通过
回应某个朋友的邀请或在搜索某个应用程序时根据链接转到那里),
Facebook 服务器将您的请求转到您的服务器并检索一个应用程序页面
(HTML 和 JavaScript)显示在 Facebook 网站中。当用户访问
Facebook 网站时,这提供了一种无缝体验;用户无需离开 Facebook
网站。示例包括 Playsh 的 Who Has the Biggest Brain* 应用程序
以及 Zynga 的 Texas Hold'em Poker*。
外部网站应用程序也通过您的服务器进行托管,但用户通过您的 URL 而
不是 Facebook 网站访问它们。在外部网站上,您可以使用 Facebook
API* 或 Facebook Connect* 加入 Facebook 的社交功能。如果您使
用 Facebook API 登录,将在一个新的浏览器窗口中将用户转到
Facebook 网站,他们必须登录后才能回到您的应用程序。要提供无缝
登录体验(省去登录 Facebook 网站的麻烦),您可以使用 Facebook
Connect*。例如,用户可能正在阅读一篇博客文章并希望输入评论。
可以允许用户以自己的 Facebook 帐户登录,而无需为另一个网站再创
建一个帐户。除了可以简化登录过程,您的应用程序现在还可以访问所
有用户数据;例如,当用户发表评论时,她的姓名旁可以显示她的姓名
和照片。同样的,在购物网站上,如果允许用户以自己的 Facebook 配
置文件登录,您可以确定她的朋友是否有推荐产品或提交了产品评论。
实时示例包括 RedBull Connect* 和 City Search*,它们允许您在网
站上添加评论、查看朋友的评论、向 Facebook Wall 或朋友的 News
Feed(如果您希望这样做)发表自己的评论。
桌面应用程序类似于外部网站应用程序,不同之处在于您将 Flash
Platform 应用程序作为 AIR 应用程序部署到桌面而不是通过网站托管
它。AIR 桌面应用程序也使用 Facebook Connect 为用户提供无缝的
Facebook 登录。示例包括 Seesmic for Facebook 和 Nomee。
创建 Facebook 应用程序时,首先需要向它注册 Facebook Developer 应用
程序 * 以获得这个应用程序的 API 密钥和密码密钥。有关详细信息,请逐步完
成构建您的第一个 Facebook 应用程序 快速开始教程。
在注册过程中,您需要为应用程序指定设置;必须指定应用程序是 Web 还是
桌面应用程序以及应用程序使用 FBML 还是 iFrame。
对于 Facebook 上的应用程序,请选择 Web 应用程序,但 iFrame 或
FBML 应用程序均可。
对于外部网站应用程序,请指定 Facebook Connect 信息。
对于桌面应用程序,请指定桌面应用程序。
在深入研究 the architecture of 基于嵌入式 Flash Platform 的应用程序、
外部 Flash Platform 网站以及 Flash Platform 桌面应用程序之前,我们先来
看下典型的嵌入式非 Flash iFrame 和 FBML Facebook 应用程序的架构。
iFrame Facebook 应用程序
当用户请求 Facebook 上的某个应用程序时(例如:
http://apps.facebook.com/someapp),Facebook 服务器处理请求的方
式取决于它是 iFrame 还是 FBML 应用程序。如果它是 iFrame 应用程序,
Facebook 服务器将返回一个 Facebook 网页,您的应用程序将加载到显示该
网页的 Facebook 铬黄包含的 iFrame 中(请参阅图 1)。
图 1.iFrame 应用程序的架构
1. 用户在 Facebook 网站上请求您的应用程序;浏览器向 Facebook 服
务器发出 HTTP 请求。
2. Facebook 服务器返回一个 HTML/JavaScript (JS) 页面,其中包含
Facebook 网站铬黄和 iFrame HTML 标签。
3. 用户的浏览器向您的服务器发出请求,要求将页面显示在 iFrame 中。
这通常是一个应用程序服务器页面(例如:PHP、ColdFusion 或
JSP)。会话信息作为 GET URL 变量与请求一起发送,这样您的应用程
序服务器页面就知道该请求来自 Facebook 以及发出请求的用户。
4. 此时执行应用程序服务器页面,根据需要对数据库或其他服务器进行任
何调用,包括使用 Facebook 服务器的 REST API 调用 Facebook 服
务器。API 调用必须包括认证信息,该信息包括您在 Facebook 上注册
应用程序时指定的应用程序 API 密钥以及调用签名(签名是根据您要发
送给 Facebook 方法的参数创建的)、会话密钥的 MD5 散列(用户请
求您的应用程序时指定它)、应用程序密码密钥以及各种其他信息。服
务器端页面通常使用一个代码库对 Facebook 发出调用,并且这个签名
是在您的服务器端脚本中创建的。虽然 Facebook 只正式支持一个服务
器端客户端库(针对 PHP 5*),但是社区 * 已开发出其他应用程序服务
器库。(Facebook 还正式支持两个客户端库:针对 JavaScript*,现
在针对 ActionScript 3.0*)。
5. Facebook 服务器将请求的数据作为 XML 或 JSON 格式的数据返回给
您的服务器。
6. 您的服务器向用户的浏览器返回一个显示在 iFrame 中的 HTML/JS 页
面。
剩余12页未读,继续阅读
资源评论
- cxj8903152012-08-03谢谢分享很少的资料
thinking13
- 粉丝: 0
- 资源: 6
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功