2016-06-10 91 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