Python Hack-a-thon #3

Facebook application on
      appengine
               aodag
       http://blog.aodag.jp/
         ...
Facebookアプリを作ってみよう

 Facebook
 Facebookアプリ
Facebook
Facebook

いわゆるSNS
世界最大
Flickrよりも写真が多いとか
twitterのようなアクティビティストリーム
リンクや写真などを共有
グループ
などなど
Facebookアプリ

Facebook上で動くアプリケーション
ユーザーの情報を取得できる
ユーザーの友達の情報を取得できる
アプリ上での行動をアクティビティに投稿できる
などなど
 
Facebookアプリ

FBML
アプリが作成したFBMLをFacebookがHTMLに変換する。
サーバーサイドで各種クライアントライブラリを使ってFacebookの機
能にアクセスする。
IFRAME
アプリが作成したHTMLをIFRAM...
FBML
IFrame
Google App Engineで
Facebookアプリを作るには
準備
Facebook開発者アプリで、appkeyとsecretを取得する。
http://www.facebook.com/developers
 
xd_receive...
app.yaml

...
handlers:

- url: /
  static_files: static/index.html
  upload: static/index.html

- url: /xd_receiver.htm
 ...
index.html
<!-- javascript libraryをインポート -->
    <script type="text/javascript" src="http://static.ak.
connect.facebook.co...
main.py wsgiミドルウェア

  application = webapp.WSGIApplication([('/fbprofile',
ProfileHandler)],
                             ...
さらにmain.py リクエストハンドラ

class FacebookHandler(webapp.RequestHandler):
    def init(self, request, response):
         """
  ...
FBML

ログインユーザー名を表示する例
 <fb:name uid="loggedinuser" />

ユーザー12345のプロフィール写真を
表示する例
 
<fb:profile-pic uid="12345" linked="
tr...
FBMLをJavascriptライブラリで変換する

FB.XFBML.Host.parseDomTree();
FQL

(´-`).。oO(また新しいQuery Languageか)

 
FQLの例


SELECT name 
FROM album 
WHERE  owner IN (
    SELECT uid2 
    FROM friend 
    WHERE uid1 = 530888600)

aodag(53...
FQLをJavascriptクライアントから呼ぶ

FB.Facebook.apiClient.fql_query(query, 
    function(result) {
        //なんか 処理する
    });
Upcoming SlideShare
Loading in …5
×

Python Hack A Thon 3 Facebook Application On A

2,810 views
2,732 views

Published on

1 Comment
3 Likes
Statistics
Notes
  • Free Download : http://gg.gg/114bb

    Hey Guyz and girls, Today I am gonna show you perfact tool, Remember This video is old, But the download link with hack is brand new. Its very simple to using this tool and here are some instructions in video. Please REDOWNLOAD. Don't Forget to Comment Subscribe & Rate My Video :)

    Virus Scan :- This file has been scanned with avast! Antivirus. -- Status: FILE IS CLEANN.

    Copyright © 2014. All Rights Reserved
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
No Downloads
Views
Total views
2,810
On SlideShare
0
From Embeds
0
Number of Embeds
13
Actions
Shares
0
Downloads
15
Comments
1
Likes
3
Embeds 0
No embeds

No notes for slide

Python Hack A Thon 3 Facebook Application On A

  1. 1. Python Hack-a-thon #3 Facebook application on appengine aodag http://blog.aodag.jp/ twitter: @aodag http://www.facebook.com/aodag
  2. 2. Facebookアプリを作ってみよう Facebook Facebookアプリ
  3. 3. Facebook
  4. 4. Facebook いわゆるSNS 世界最大 Flickrよりも写真が多いとか twitterのようなアクティビティストリーム リンクや写真などを共有 グループ などなど
  5. 5. Facebookアプリ Facebook上で動くアプリケーション ユーザーの情報を取得できる ユーザーの友達の情報を取得できる アプリ上での行動をアクティビティに投稿できる などなど  
  6. 6. Facebookアプリ FBML アプリが作成したFBMLをFacebookがHTMLに変換する。 サーバーサイドで各種クライアントライブラリを使ってFacebookの機 能にアクセスする。 IFRAME アプリが作成したHTMLをIFRAME内で表示する。 XFBMLで、FBMLの機能を一部利用できる。 Javascript SDKでFacebookの機能を使える。 サーバーサイドからのアクセスも可能。
  7. 7. FBML
  8. 8. IFrame
  9. 9. Google App Engineで Facebookアプリを作るには 準備 Facebook開発者アプリで、appkeyとsecretを取得する。 http://www.facebook.com/developers   xd_receiver.htm をダウンロードする。 http://www.somethingtoputhere.com/xd_receiver.htm
  10. 10. app.yaml ... handlers: - url: /   static_files: static/index.html   upload: static/index.html - url: /xd_receiver.htm   static_files: static/xd_receiver.htm   upload: static/xd_receiver.htm - url: .*   script: main.py
  11. 11. index.html <!-- javascript libraryをインポート -->     <script type="text/javascript" src="http://static.ak. connect.facebook.com/js/api_lib/v0.4/FeatureLoader.js.php" ></script>  <!-- jqueryとかもインポート --> 略 <!-- 初期化 -->     <script >       apikey = "d831ba0c7dd7b830572fb5f928f94bc4";       FB.init(apikey, "xd_receiver.htm");       FB.ensureInit(function() { $(function() { // ここで初期化 }); });     </script>
  12. 12. main.py wsgiミドルウェア   application = webapp.WSGIApplication([('/fbprofile', ProfileHandler)],                                        debug=True)   import facebook.wsgi as facebook   import settings   application = facebook.FacebookWSGIMiddleware (application,                                                 settings.fbconfig)   util.run_wsgi_app(application)
  13. 13. さらにmain.py リクエストハンドラ class FacebookHandler(webapp.RequestHandler):     def init(self, request, response):          """          Facebook用スーパークラス          """          super(FacebookHandler, self).init(request, response)          self.facebook = request.environ['pyfacebook.facebook']          if self.facebook.check_session(self.request):              self.request.remote_user = self.facebook.uid
  14. 14. FBML ログインユーザー名を表示する例  <fb:name uid="loggedinuser" /> ユーザー12345のプロフィール写真を 表示する例   <fb:profile-pic uid="12345" linked=" true" />
  15. 15. FBMLをJavascriptライブラリで変換する FB.XFBML.Host.parseDomTree();
  16. 16. FQL (´-`).。oO(また新しいQuery Languageか)  
  17. 17. FQLの例 SELECT name  FROM album  WHERE  owner IN (     SELECT uid2      FROM friend      WHERE uid1 = 530888600) aodag(530888600)の友達のアルバム名を全て取得する
  18. 18. FQLをJavascriptクライアントから呼ぶ FB.Facebook.apiClient.fql_query(query,      function(result) {         //なんか 処理する     });

×