想要研究一下這一塊,發現中文網頁,竟然沒什麼相關資料,
可能是阿共仔屏蔽了Facebook吧!!
那好,我就把我目前就研究到此的作法和心得寫一寫,
以免後進走太多冤妄路,
想要撰寫我標題所說的Facebook +JQuery+ GAE
你必需具備:
HTML基礎
Python基礎
Google帳號和已認證的可用的GAE帳號
GAE的架構
上述可參考上官林傑的 Google應用服務引擎開發實戰
http://www.books.com.tw/exep/prod/booksfile.php?item=0010443092
Facebook的架構
FBML,FBJS的撰寫
這邊可參考 賽大的 Facebook與funP應用程式設計
http://www.books.com.tw/exep/prod/booksfile.php?item=0010445951
PS:這本用的是Facebook自行開發的PHP API,和我們要用的pyfacebook不同,
不過除了部份API不支援,其實大部份都是相通的,盡請安心服用。
Javascript基礎(初章暫不需)
Javascript書很多,本人推薦 JavaScript私房書
http://www.books.com.tw/exep/prod/booksfile.php?item=0010294368
JQuery基礎(初章暫不需)
我找不到覺得優的書,所以我都只直看網站的turtuial,不過歡迎大家推薦一下
IP分享器映射http port至你的電腦
各家分享器做法不同,請參考你的說明書
ok 重點來了..
本初章先將焦點放在如何在GAE上運行pyfacebook進而開發facebook的application
Pyfacebook基礎,網路神人團所撰寫的pyfacebook 用python撰寫的可以和facebook 溝通的Server端API可供GAE使用開發
pyfacebook:
http://github.com/sciyoshi/pyfacebook/
1.首先將 pyfacebook下載解壓後,存至gae目錄下
2.在pyfacebook目錄裡建置app.yaml
內容如下:
application: whatever
version: 1
runtime: python
api_version: 1
handlers:
- url: .*
script:main.py
主檔main.py
內容如下
# -*- coding: utf-8 -*-
import cgi
import sys, os
import wsgiref.handlers
from google.appengine.ext import webapp
from google.appengine.ext.webapp import template
import facebook
from facebook import FacebookError
FACEBOOK_API_KEY = '你的key' #如何申請請自行參閱,不詳述囉
FACEBOOK_SECRET_KEY = '你的key'
_DEBUG = True
class MainPage(webapp.RequestHandler):
def get(self):
#def post(self):
fb = facebook.Facebook(FACEBOOK_API_KEY, FACEBOOK_SECRET_KEY)
if fb.check_session(self.request) and fb.added:
pass
else:
url = fb.get_add_url()
self.response.out.write('<script language="javascript">top.location.href="' + url + '"</script>')
return
#get friend list begin
friend_ids = fb.friends.get()
friend_ids.append(fb.uid)
info = fb.users.getInfo(friend_ids, ['name', 'pic_square', 'uid'])
template_values={}
template_values={'info': info}
#get friend list end
for i in info:
self.response.out.write('<img src='+i['pic_square']+' />'+i['name']+'<br />')
def main():
application = webapp.WSGIApplication([('/',Mainpage)],debug=_DEBUG)
wsgiref.handlers.CGIHandler().run(application)
if __name__ == "__main__":
main()
執行一下你的dev_appserver.py --address=映射好的內納IP --port=80 demos/pyfacebook
(其實你也可以直接下appcfg.py上傳你的程式至GAE上,不過這樣初期開發會增加很時間成本)
設定你的facebook developer 你的應用程式
將Canvas URL:設定為你的外網IP(或是GAE的應用程式網址)
運行一下:
http://apps.facebook.com/gae_cloud/
(請輸入你的facebook app 網址)
將 將!!!
你就會看到你的朋友列表了
預告:目前是使用iframe的方式,
第二節來說一下FBML好了
留言列表