Facebook Platform, Genel Kavramlar, iFrame & FQL
-
Upload
ozkan-altuner -
Category
Technology
-
view
2.571 -
download
5
description
Transcript of Facebook Platform, Genel Kavramlar, iFrame & FQL
Facebook PlatformGenel Kavramlar, iFrame & FQL
Özgür DemirSite Reliability Engineer / Software Engineer11 Ekim 2009
Facebook Platform Nedir ?
Facebook Platform Nedir ?
Facebook temel işlevlerini, yazılım geliştiricilerin kullanımına sunmak için hazırlanmış olan bileşenler bütünüdür
Facebook Platform Nedir ?
Facebook temel işlevlerini, yazılım geliştiricilerin kullanımına sunmak için hazırlanmış olan bileşenler bütünüdür
1. Identity (Kimlik)
Facebook Platform Nedir ?
Facebook temel işlevlerini, yazılım geliştiricilerin kullanımına sunmak için hazırlanmış olan bileşenler bütünüdür
1. Identity (Kimlik)2. Social Graph (Sosyal Grafik)
Facebook Platform Nedir ?
Facebook temel işlevlerini, yazılım geliştiricilerin kullanımına sunmak için hazırlanmış olan bileşenler bütünüdür
1. Identity (Kimlik)2. Social Graph (Sosyal Grafik)3. Stream (Veri Akışı)
Facebook Platform Nedir ?
Facebook temel işlevlerini, yazılım geliştiricilerin kullanımına sunmak için hazırlanmış olan bileşenler bütünüdür
1. Identity (Kimlik)2. Social Graph (Sosyal Grafik)3. Stream (Veri Akışı)
Identity SocialGraph
Stream
Nasıl ?
Facebook Platform Bileşenleri
Facebook Platform Bileşenleri
Facebook APIFBML (Facebook Markup Language)XFBML (Extended FBML)FQL (Facebook Query Language)FBJS (Facebook Javascript Library)
Facebook Uygulaması Veri Gösterim Yöntemleri
Facebook Uygulaması Veri Gösterim Yöntemleri
- FBML
<div id=‘welcome’>Merhaba <fb:name uid="12345" />, Hoşgeldin</div>
Facebook Uygulaması Veri Gösterim Yöntemleri
- FBML- iFrame
iFrame Uygulamalarında Program Akışı
http://apps.facebook.com/uygulama_adresi/
http://apps.facebook.com/uygulama_adresi/
Sayfa yükleme istemi
http://apps.facebook.com/uygulama_adresi/
iFrame dışındaki içerik ve fb_sig parametreleri
http://apps.facebook.com/uygulama_adresi/
Uygulama Sunucusu
iFrame içeriği istemi
http://apps.facebook.com/uygulama_adresi/
Uygulama Sunucusu
apps.facebook.com
iFrame içeriği istemi
API istemi (FQL)
http://apps.facebook.com/uygulama_adresi/
Uygulama Sunucusu
apps.facebook.com
iFrame içeriği istemi
API sonuç verisi
http://apps.facebook.com/uygulama_adresi/
Uygulama Sunucusu
iFrame içeriği
Yetkilendirme ve Güvenlik
Yetkilendirme ve Güvenlik
fb_sig parametreleri
Yetkilendirme ve Güvenlik
fb_sig parametreleri
fb_sig_addedfb_sig_api_keyfb_sig_localefb_sig_timefb_sig_user/fb_sig_canvas_userfb_sig_session_keyfb_sig_expiresfb_sig_in_canvasfb_sig_in_profile_tab
Yetkilendirme ve Güvenlik
$_REQUEST ve fb_sig
$fbsig = array();foreach($_GET as $key=>$value) { if(substr($key,0,7) == 'fb_sig_') { $fbsig[substr($key,7)] = $value; }}ksort($fbsig);
foreach($fbsig as $key=>$value) { $string .= $key . '=' . $value;}$string .= $secret;
if (md5($string) == $_GET['fb_sig’]) { // OK} else { // NOT OK}
FQL
SELECT name, status, is_app_user FROM user WHERE uid=211031
FQL
require_once 'facebook.php';
$appapikey = ’UYGULAMA APP KEY';$appsecret = ’UYGULAMA APP SECRET';
FQL
require_once 'facebook.php';
$appapikey = ’UYGULAMA APP KEY';$appsecret = ’UYGULAMA APP SECRET';
$sessionKey = $_REQUEST['fb_sig_session_key'];$fbClient = new FacebookRestClient($appapikey, $appsecret, $sessionKey);
FQL
require_once 'facebook.php';
$appapikey = ’UYGULAMA APP KEY';$appsecret = ’UYGULAMA APP SECRET';
$sessionKey = $_REQUEST['fb_sig_session_key'];$fbClient = new FacebookRestClient($appapikey, $appsecret, $sessionKey);
$userid = $_REQUEST['fb_sig_user'];
$fql = "SELECT name, status, is_app_user FROM user WHERE uid= “ . $userid;$userInfo = $fbClient->fql_query($fql);
FQL
require_once 'facebook.php';
$appapikey = ’UYGULAMA APP KEY';$appsecret = ’UYGULAMA APP SECRET';
$sessionKey = $_REQUEST['fb_sig_session_key'];$fbClient = new FacebookRestClient($appapikey, $appsecret, $sessionKey);
$userid = $_REQUEST['fb_sig_user'];
$fql = "SELECT name, status, is_app_user FROM user WHERE uid= “ . $userid;$userInfo = $fbClient->fql_query($fql);
// $userInfo[0][‘name’] Kullanicinin tam adi// $userInfo[0][‘status’] Status mesaji// ..
Sorular ?
(c) 2009 Facebook, Inc. or its licensors. "Facebook" is a registered trademark of Facebook, Inc.. All rights reserved. 1.0