2016-06-10 36 views
-1

所以我已經整合了Facebook SDK的JS版本。但是,我似乎不確定如何整合PHP版本,以便它不會打亂JS版本。facebook SDK Javascript和PHP在一起

我的問題是:

  1. 如果我使用來自Facebook的PHP SDK,他們要檢查JS版本正在運行的方法?
  2. 從FB存儲數據,一旦用戶使用FB登錄,我會從FB存儲哪些信息?我瞭解他們的電子郵件地址和姓名等,但是有沒有像Twitter一樣的API密鑰,我需要隨每個請求一起發送?
  3. JS post to feed?這可能嗎?

對這三個問題抱歉,但是關於這方面的文檔還不清楚。

回答

1

這裏是我的問題的答案:

  1. Facebook的PHP SDK運行在服務器和客戶端的JavaScript的一個運行。它基本上是不可能來檢查JS SDK「正在運行」從服務器,因爲PHP已經被渲染。
  2. 符合條件的每個用戶都可以從Facebook Developers網站註冊Facebook應用程序。每個應用程序都有自己的permissions,由您在應用程序設置中設置,具體取決於您想要實現的目標。用戶必須接受他們才能使用使用Facebook應用程序的網站/服務/應用程序。基本上可以從用戶那裏獲得任何信息(當然是Facebook公開的),並設置了正確的應用程序權限。

的JS SDK的在您的網站的基本設置需要在你的HTML一次添加此代碼(PHP)文件:

<script> 
 
    window.fbAsyncInit = function() { 
 
    FB.init({ 
 
     appId  : 'your-app-id', 
 
     xfbml  : true, 
 
     version : 'v2.6' 
 
    }); 
 
    }; 
 

 
    (function(d, s, id){ 
 
    var js, fjs = d.getElementsByTagName(s)[0]; 
 
    if (d.getElementById(id)) {return;} 
 
    js = d.createElement(s); js.id = id; 
 
    js.src = "//connect.facebook.net/en_US/sdk.js"; 
 
    fjs.parentNode.insertBefore(js, fjs); 
 
    }(document, 'script', 'facebook-jssdk')); 
 
</script>

請不是說你必須更換appId屬性與您的實際應用程序ID。

在客戶端,您可以使用FB.login函數將用戶登錄到Facebook。您可以在他們的文檔中查看usage of this function。該函數接收回調作爲其第一個參數,因此您可以決定如何處理回調中的用戶數據(響應變量)。

  1. 使用JS SDK很容易發佈到用戶的提要。但它需要publish_actions權限。您可以看到發佈到訂閱源here的示例。

我不知道你爲什麼要同時使用JS和PHP SDKs。我建議使用JS SDK,並將帶有客戶端數據的AJAX請求發送到服務器,以便能夠存儲信息。

+0

謝謝,我知道如果我一直在閱讀我最有可能解決的文檔,但是我閱讀大文檔時感到困惑。 – RussellHarrower