woff 發表於 2012-3-8 18:40:44

圖形API的IFrame相應的Facebook應用程序開發的PHP SDK的3.0

起初,我想告訴你,這個職位是我的熱門職位更新版本的圖形API與IFrame的基地Facebook應 ​​用程序開發。所以,如果你從來沒有看到教程,我請您來參觀,學習基本的東西,特別的Facebook應 ​​用程序的安裝。後,我也提到了一些關於iframe的重要的事情,所以在這個崗位,我不提他們再次。所以在此更新後,我們將學習:

[*]如何更新Facebook的PHP SDK 3.0庫
[*]認證
[*]如何讓擴展權限
[*]如何調用圖形API
[*]如何使用Facebook的最新的對話系統發布流
[*]如何申請/邀請您的朋友和跟踪

在開始之前:http://c3354688.r88.cf0.rackcdn.com/wp-content/uploads/2011/07/demo_application.jpghttp://c3354688.r88.cf0.rackcdn.com/wp-content/uploads/2011/07/download_code.jpg
1。如何更新Facebook的PHP SDK 3.0庫 首先下載Facebook的PHP SDK
/ src目錄拷貝facebook.php,base_facebook.php和fb_ca_chain_bundle.crt到您的項目目錄。然後下載我的代碼在這裡,在這個zip文件中,你也可以得到PHP SDK庫。現在,點擊下面的圖片了解文件的功能。
2。認證
在fbmain.php
行數23 - > 77,你會看到下面的代碼。


[*]起初,我們包括facebook.php庫。
[*]然後,我們創建了一個為Facebook的對象
[*]然後我們檢查是否有有效的會話為用戶$ USER = $ Facebook的>的getUser();
[*]然後我們生成與擴展權限登錄網址
[*]在數62行,我們調用圖形API美元user_profile = $ Facebook的API('/我');檢查,如果會議是無效或不。如果我們得到的結果,那麼用戶的會話是有效的,否則,我們為用戶設置= NULL這意味著會話過期或超時。
[*]如果沒有有效的用戶在發現行號71,我們為我們的應用程序重定向用戶登錄/認證頁面。
$user = null; //facebook user uid
    try{
      include_once "facebook.php";
    }
    catch(Exception $o){
      echo '<pre>';
      print_r($o);
      echo '</pre>';
    }
    // Create our Application instance.
    $facebook = new Facebook(array(
      'appId'=> $fbconfig['appid'],
      'secret' => $fbconfig['secret'],
      'cookie' => true,
    ));
    //Facebook Authentication part
    $user       = $facebook->getUser();
    $loginUrl   = $facebook->getLoginUrl(
            array(
                'scope' => 'email,publish_stream,user_birthday,user_location,user_work_history,user_about_me,user_hometown'
            )
    );
    if ($user) {
      try {
      // Proceed knowing you have a logged in user who's authenticated.
      $user_profile = $facebook->api('/me');
      } catch (FacebookApiException $e) {
      //you should use error_log($e); instead of printing the info on browser
      d($e);// d is a debug function defined at the end of this file
      $user = null;
      }
    }
    if (!$user) {
      echo "<script type='text/javascript'>top.location.href = '$loginUrl';</script>";
      exit;
    }
身份驗證成功後,用戶的應用程序Facebook將用戶重定向到我們的回調URL,我們在開發應用程序設置提供。此外通過Facebook的命名參數代碼= XXXX,但因為這是一個iframe的應用程序,裡面Facebook的運行,所以我們使用了一種特殊的代碼行數16 - > 19。此代碼檢查,如果有參數的代碼定義或沒有,如果它的定義,那麼它會重定向用戶的Facebook應 ​​用程序URL。
if (isset($_GET['code'])){
      header("Location: " . $fbconfig['appBaseUrl']);
      exit;
    }
3。如何讓擴展權限 當你生成你這裡提供擴展的權限,登錄網址。以前的參數命名為“req_perms”,現在它的“範圍”。
$loginUrl= $facebook->getLoginUrl(
         array(
               'scope' => 'email,publish_stream,user_birthday,user_location,user_work_history,user_about_me,user_hometown'
         )
   );
結帳權限列表,從這裡延伸。4。如何調用圖形API 在fbmain.php
行數76,你會看到我是如何被稱為圖形API。這裡用戶是Facebook的用戶的UID。要知道更多有關圖形API訪問此頁
//get user basic description
    $userInfo = $facebook->api("/$user");
5。如何使用Facebook的最新的對話系統發布流 中的template.php
行數50 - > 54,你會看到Facebook的JavaScript函數。要了解更多的飼料,請點擊這裡查看。
FB.ui({ method : 'feed',
                        message: userPrompt,
                        link   :hrefLink,
                        caption:hrefTitle
                      });

6。如何申請/邀請您的朋友和跟踪 所以,你想你的用戶將邀請他的朋友使用此應用程序,同時,你要跟踪的人,你的用戶發送請求。此外,你要來檢查,如果該用戶通過要求或不來。在演示應用程序,單擊“發送

請求/發送邀請來檢查請求對話框。中的template.php
行數88,你會看到這個功能。
function newInvite(){
               var receiverUserIds = FB.ui({
                        method : 'apprequests',
                        message: 'come on man checkout my application. visit
http://thinkdiff.net',
               },
               function(receiverUserIds) {
                        console.log("IDS : " + receiverUserIds.request_ids);
                        }
               );
               //
http://developers.facebook.com/docs/reference/dialogs/requests/
            }

此功能顯示了邀請對話框,如果用戶選擇和朋友發送邀請,然後在響應你會得到所有用戶的朋友的UID為一個逗號分隔的字符串。所以,如果你使用Firefox的Firebug,你會看到的console.log(“IDS的:”+ receiverUserIds.request_ids)將打印的IDS:在Firebug控制台XXXX。所以,如果你想跟踪誰收到邀請的朋友的IDS,然後解析receiverUserIds並保存在你的MySQL數據庫。如果用戶身份驗證的邀請,從您的應用程序,然後他的URL會http://apps.facebook.com/ /?request_ids = 012345678910 所以的fbmain.php
行數23 - > 26,你會看到下面的代碼。我只是空白,你寫額外的代碼,跟踪用戶。
if (isset($_GET['request_ids'])){
      //user comes from invitation
      //track them if you need
    }

我希望本教程將幫助你開發Facebook應用程序。

woff 發表於 2013-2-1 19:31:10

{:5_4:}牛X海海!!!

登圣革凡 發表於 2014-7-7 14:26:52



果断秒过,走人
頁: [1]
查看完整版本: 圖形API的IFrame相應的Facebook應用程序開發的PHP SDK的3.0