【问题标题】:How can I transfer a PHP-based Facebook session to Javascript?如何将基于 PHP 的 Facebook 会话转移到 Javascript?
【发布时间】:2013-12-25 20:37:26
【问题描述】:

我查看了this 问题中提供的答案,这让我离我想去的地方更远了!

我已经使用 Facebook PHP SDK 在我的应用程序中集成了 Facebook 登录,它运行良好(我正在使用 Laravel,它非常棒!)。

我希望将此 Facebook 会话转移到 Javascript,以便我可以对 API 进行一些 AJAX 调用。我在 PHP 变量中有会话,但我只是想知道如何将其内容传递给 JS 并使用它们初始化 FB SDK。有没有人对我如何实现这一点有任何简化的建议?

【问题讨论】:

标签: javascript php jquery facebook facebook-graph-api


【解决方案1】:

根据facebooks docs,这可以工作:

PHP:

$signed_request = $facebook->getSignedRequest();

JS:

FB.init({
    appId  : '<?php echo $yourAppId; ?>',
    authResponse: {
        accessToken: '<?php echo $signed_request["access_token"]; ?>',
        expiresIn:'...',
        signedRequest: '<?php echo $_REQUEST["signed_request"]; ?>',
        userID:'<?php echo $facebook->getUser(); ?>'
    },
    ...
});

【讨论】:

  • 我收到了Undefined index: signed_request$_REQUEST['signed_request']。我需要先设置这个,还是应该使用$signed_request
  • 这应该由 Facebook 在应用程序框架的第一次请求时设置,如果你在其中的话。否则 php sdk 对我来说真的没有意义。
  • 那行不通,但我确实知道我需要什么。我发现我不需要 Facebook 会话。我所需要的只是调用 API 的访问令牌。我所做的只是在 PHP 中使用 echo "&lt;script&gt;var fb_access_token = '".$fb-&gt;getAccessToken()."';&lt;/script&gt;";,然后在 JS 中使用 FB.api('/me/friends?fields=name,picture.width(250).height(250),username', {access_token : fb_access_token}, function(response){});。简单的。 :)
  • 嗯,好吧,我想我想得太复杂了。 ;)
猜你喜欢
  • 2016-04-10
  • 1970-01-01
  • 2013-07-11
  • 2012-01-05
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-05-03
  • 2013-03-18
相关资源
最近更新 更多