基于Facebook和Flash平台的应用架构解析(三)
2009-09-04 00:00:00 来源:WEB开发网独立Flash Facebook站点应用
图5描绘了独立的Flash Facebook站点应用的架构。其主要区别是Facebook服务器不再代为处理全部浏览器请求。另外,现在你还必须在客户端代码中用Facebook API 或 Facebook Connect处理用户的登录。如果使用Facebook API处理登录,用户需在新的浏览器窗口中登录Facebook并返回到你的应用中。为了避免在Facebook站点登录,为用户提供更无缝的登录体验,你可以使用Facebook Connect。
图5 独立的Flash Facebook站点应用
当用户在你的站点上访问应用时,浏览器向你的服务器发送HTTP请求——请求一个HTML或任何服务端页面。
服务器返回包含了对你的SWF文件的引用的HTML/JS页面。如果使用Facebook Connect,该HTML页面会包括部分用于初始化Facebook Connect的JavaScript代码(说明)。
用户浏览器向你服务器请求内嵌在HTML页面中的SWF文件。
你的服务器返回SWF文件。
SWF 文件中的ActionScript 代码直接异步请求Facebook服务器——方法是使用官方提供的ActionScript 3.0 Library for Facebook Platform。你每次可以提交单独一个调用,也可以提交成批调用。在这种情况下,最初对Facebook服务器的调用必须获得授权;一旦用户成功登录 (最好使用Facebook Connect),得到了Session Key,那么后续所有Facebook API调用所需的签名就会由ActionScript 3.0 Library for Facebook Platform的类生成。当然,Facebook必须通过跨域策略文件开放了访问权限,且API调用中传送了所需参数。有关此问题的更多信息,请参看前 面在Flash iFrame应用部分的讨论。
赞助商链接