日韩久久久精品,亚洲精品久久久久久久久久久,亚洲欧美一区二区三区国产精品 ,一区二区福利

Facebook中FBML和IFrame的工作原理

系統 1819 0

在Canvas Page中,用戶創建的應用需要使用facebook支持的標簽來展示應用的相關內容。Facebook目前支持的兩種標記語言為FBML和IFrame。其中FBML為facebook平臺提供的一種專門用于開發facebook canvas page的標記語言,由facebook官方開發。Iframe是標準Html中支持的標記語言格式。在canvas page中使用iframe和在一般html頁面中使用iframe用法相同。本文主要講述一下fbml和iframe的工作原理。

?

IFrame工作原理
Iframe是一種靈活的標記語言,當用戶通過canvas page訪問( http://apps.facebook.com/yourapp)iframe 的時候,facebook會向該頁面返回一系列的參數。這些參數中包含了用戶的授權信息,當iframe獲取到這些參數后,就可以正常訪問facebook上的用戶數據了。

Facebook中FBML和IFrame的工作原理

?

上圖為iframe在facebook上的工作原理圖。當用戶訪問你的應用時,facebook會驗證該應用是否得到當前登錄用戶的授權,若該應用已經得到用戶的授權,facebook向canvas callback url返回session key,應用接收到facebook的session key后就可以于facebook進行交互了。


在使用iframe時,facebook只充當一個權限驗證的角色,當用戶訪問相關的iframe頁面是,實際上是與部署了應用的服務器進行交互的,如果交互的內容需要用到facebook的信息時,應用服務器會調用facebook的相關接口來獲取相關的數據內容。也就是說在canvas page中使用iframe時,用戶的所有交互都是直接與應用服務器進行交互的,而不是直接與facebook進行交互,而與facebook的交互則是由應用服務器來完成的。

?

FBML工作原理

使用facebook開發canvas頁面,和使用html開發一個屬于自己的系統一樣方便。開發者只需要在自己的頁面中嵌入fbml就可以直接訪問facebook上的相關信息。下面是FBML的工作原理圖。

Facebook中FBML和IFrame的工作原理

從圖中可以了解,當用戶登陸后,只要用戶授權了改應用,應用服務器就只和facebook進行交互,由facebook統一將返回的結果傳遞給用戶瀏覽器。這里的facebook就相當一個容器,將應用服務器進行封裝,用戶使用該應用時的所有請求都是通過facebook來完成的。而不需要用戶與應用服務器進行交互。

?

總結:
上面簡單的介紹了facebook的canvas的兩種不同的標記語言的工作原理。最后總結一下他們各自的優缺點:
<1>iframe的優點:

????? (1)可以使用普通html標記,編輯iframe和編輯一般的html頁面類似
??????(2)可以使用localhost進行調試,這點不同于FBML,FBML的調試必須要通過一個擁有獨立IP的服務器,并且這臺服務器可以正常的訪問facebook。
???? (3)在可以使用css,JavaScript。

<2>FBML的優點:
?????? (1)可以提供比較人性化的url訪問路徑。
?????? (2)驗證機制比較簡單,只需要一個簡單的標簽即可。
?????? (3)方便快速的訪問facebook上的多種標簽。
?????? (4)加載速度比iframe要快。

?

Iframe和FBMl比較
Iframe的使用和普通的html frame用法相同,因此可以使開發者快速創建自己的應用,開發者可以使用localhost進行調試,而不需要專門部署自己的服務器。但訪問速度不如FBML。如果需要訪問facebook中的相關數據,還需要用到相關js庫的支持。FBML的使用學習起來會有些難度,但是如果熟悉struts或者jsp的自定義標簽的用法,FBML用起來也很方便。
FBML是facebook自身提供的標簽庫,當用戶訪問FBML的頁面時,和訪問一般的facebook相同,而不需要應用服務器做中轉,因此訪問速度會比較慢,FBML唯一的缺點就是測試時需要使用擁有獨立IP的服務器。

Facebook中FBML和IFrame的工作原理


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 崇阳县| 大姚县| 大洼县| 乌苏市| 红安县| 息烽县| 峨山| 甘谷县| 平邑县| 安福县| 察隅县| 天峻县| 江城| 汉川市| 青海省| 甘孜县| 霍山县| 科技| 东安县| 五河县| 大关县| 磴口县| 玉林市| 广平县| 平和县| 乌鲁木齐县| 邢台县| 凌源市| 临泉县| 广东省| 大竹县| 尉犁县| 兴仁县| 九龙县| 名山县| 黑河市| 云林县| 柘城县| 德兴市| 嵊泗县| 西盟|