一区二区三区日韩精品-日韩经典一区二区三区-五月激情综合丁香婷婷-欧美精品中文字幕专区

分享

Facebook API 開發(fā)記錄

 Jo_Shang 2014-05-13

注冊App
Application里有個應用叫Developer,加入后可以注冊新應用。點擊“set up new application”輸入應用的信息提交即可。開發(fā)者首頁好像沒有相關的鏈接入口,這點不方便。

 

權限驗證
現(xiàn)在的社交、微博網(wǎng)站大多都采用標準的OAuth驗證,F(xiàn)acebook也不例外,這點必須滴。用戶登錄是在Facebook的網(wǎng)站頁面輸入賬號密碼,登錄成功后會重定向到你的頁面從而獲取Token,之后訪問API使用Token來驗證。你的應用只需要拿到用戶的Token即可,整個過程你是接觸不到用戶的賬號和密碼的。即使你拿到賬號也沒用,API只認Token。相比HTTP Basic Authentication(HTTP Header中增加Bae64過的賬號和密碼),整個做法復雜化了,但是安全了。Basic Authentication時代開發(fā)者可以隨心所欲,做各種各樣的應用。OAuth之后最麻煩的就是驗證,特別是對桌面或移動應用,一般都在窗體中嵌入一個瀏覽器控件來完成。

 

獲取Token
1) 訪問https://graph./oauth/authorize?client_id={app_id}&redirect_uri={app_url},如果用戶沒有登錄,則登錄,提示用戶是否允許應用訪問自己的數(shù)據(jù),既是否授權允許。Facebook返回到你的應用,帶一個code參數(shù): {app_url}?code={code}


2)訪問https://graph./oauth/access_token?client_id={app_id}&redirect_uri={url}&client_secret={app_secret}&code={code}
Facebook返回到你的應用,body中有access_token,你可以在你的應用里存儲用戶token,默認60分鐘過期,你可以增加offline_access權限讓它不過期。
整個過程是比較簡單的,不用作簽名之類的。麻煩的是必須跳到facebook網(wǎng)站驗證,如果是做客戶端應用會影響體驗。

 

訪問API
訪問需驗證的Function加上access_token參數(shù)即可,GET或POST看具體函數(shù)而定,API統(tǒng)一返回JSON格式的數(shù)據(jù),沒有別的選擇,不像Twitter的選擇很多。請求中也不用做簽名。

 

權限
Facebook的權限分得異常的細,默認你只能訪問用戶最基本的信息,比如你想獲取一個設置了隱私(只對朋友開放)的用戶的statu,需要read_stream權限,你想post statu需要publish_stream權限,你想獲取用戶的email賬號需要email權限等等。所以最好根據(jù)你的應用確定需要那些權限,在用戶首次使用做權限驗證時開通相應的權限,否則后面使用中會達不到你期望的結果。
提升權限
訪問:https://graph./oauth/authorize?client_id={app_id}&redirect_uri={app_url}&scope=publish_stream,offline_access,user_status,read_stream
scope后面跟的就是權限,每個用逗號分開,可以有多個。

 

更新通知
Real-time Updates,當你的用戶有更新時,F(xiàn)acebook可以通知你,這是一個很有用的功能,可以實時接受用戶的更新。

1) 創(chuàng)建一個訂閱,默認你的應用是沒有更新通知的,你需要先創(chuàng)建一個訂閱,告訴Facebook我需要更新通知。

POST數(shù)據(jù)到https://graph./{app_id}/subscriptions?access_token={token},這個token是應用的token不是用戶的token,注意url是https,不是http(文檔是錯的),參數(shù):object,fields(你需要監(jiān)視用戶的那些更新),callback_url,verify_token(你自己指定一個驗證用),提交這個請求后就創(chuàng)建了一個訂閱。提交POST時候你的callback_url必須存在且可以訪問,F(xiàn)acebook會Get此url驗證是否存在。

2) 接受更新,創(chuàng)建好訂閱后當用戶有更新時,F(xiàn)acebook會通知此url告訴你有更新(POST),你將收到的更新內容為JSON格式,如:“{"object":"user","entry":[{"uid":"100001548188940","id":"100001548188940","time":1301731097,"changed_fields":["feed"]}]}”,表示該用戶更新了狀態(tài),不包括更新的內容。當然,返回可能是個集合。

你收到數(shù)據(jù)后可以做相應的更新處理,根據(jù)你的應用這個post頻率可能會高(監(jiān)視的是使用你應用的所有用戶),得考慮的你的程序性能。

 

小結

Facebook是一個很全面的社交網(wǎng)站,其API也很豐富,有Friends,Feed,Like,Music,Photo,Events,Checkin...等等,文檔也比較多。但具體使用上就簡單了,至少每次請求API不用簽名,相比Twitter,Douban等省事多了。關鍵得花時間研究透他的文檔,文檔里有詳細的說明,問題都可以通過文檔解決。

 

關鍵字:Facebook,API,社交網(wǎng)站,微博,應用
http://chy710.cnblogs.com/

 

    本站是提供個人知識管理的網(wǎng)絡存儲空間,所有內容均由用戶發(fā)布,不代表本站觀點。請注意甄別內容中的聯(lián)系方式、誘導購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權內容,請點擊一鍵舉報。
    轉藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多

    日本精品最新字幕视频播放| 国产亚州欧美一区二区| 麻豆剧果冻传媒一二三区| 91麻豆精品欧美一区| 亚洲欧洲在线一区二区三区| 亚洲视频一区二区久久久| 日本在线 一区 二区| 亚洲妇女作爱一区二区三区| 国产午夜福利不卡片在线观看| 中文字幕乱码亚洲三区| 久久精品国产99精品亚洲| 亚洲av在线视频一区| 亚洲另类女同一二三区| 翘臀少妇成人一区二区| 91日韩欧美国产视频| 国产a天堂一区二区专区| 国产精品亚洲精品亚洲| 不卡中文字幕在线免费看| 国产精品午夜福利免费在线| 免费观看日韩一级黄色大片| 国产永久免费高清在线精品| 日本视频在线观看不卡| 五月婷婷六月丁香狠狠| 日韩人妻免费视频一专区 | 亚洲一区二区精品国产av| 东京热电东京热一区二区三区| 精品一区二区三区人妻视频| 国产精品欧美激情在线| 亚洲天堂精品一区二区| 欧美精品在线播放一区二区| 国产午夜福利在线免费观看| 亚洲视频在线观看免费中文字幕| 日本91在线观看视频| 国产又猛又黄又粗又爽无遮挡 | 欧洲偷拍视频中文字幕| 91精品国产综合久久精品| 亚洲av熟女国产一区二区三区站| 日本加勒比在线播放一区| 中日韩美一级特黄大片| 日韩人妻毛片中文字幕| 国产亚洲欧美日韩国亚语|