无法获得与 Facebook 应用程序的会话? (使用它的 Graph API)
Posted
技术标签:
【中文标题】无法获得与 Facebook 应用程序的会话? (使用它的 Graph API)【英文标题】:Cannot get a session with Facebook app? (using its Graph API) 【发布时间】:2010-05-08 20:26:48 【问题描述】:我有几行非常简单的 Facebook 应用程序,使用新的 Facebook API:
<pre>
<?php
require 'facebook.php';
// Create our Application instance.
$facebook = new Facebook(array(
'appId' => '117676584930569',
'secret' => '**********', // hidden here on the post...
'cookie' => true,
));
var_dump($facebook);
?>
但它给了我以下输出:
http://apps.facebook.com/woolaladev/i2.php 会放弃
object(Facebook)#1 (6)
["appId:protected"]=>
string(15) "117676584930569"
["apiSecret:protected"]=>
string(32) "**********" <--- just hidden on this post
["session:protected"]=>
NULL <--- Session is NULL for some reason
["sessionLoaded:protected"]=>
bool(false)
["cookieSupport:protected"]=>
bool(true)
["baseDomain:protected"]=>
string(0) ""
由于某种原因,会话为 NULL,但我已登录,可以访问我的主页和个人资料,并在 Facebook 上运行其他应用程序(以查看我已登录)。
我正在关注以下示例:
http://github.com/facebook/php-sdk/blob/master/examples/example.phphttp://github.com/facebook/php-sdk/blob/master/src/facebook.php
(使用原始 URL 下载:wget http://github.com/facebook/php-sdk/raw/master/src/facebook.php)
在dreamhost.com 和netfirms.com 上尝试了两家托管公司,结果是一样的。
【问题讨论】:
遇到了完全相同的问题,正在寻找解决方案:/ [还没有运气] 【参考方案1】:会话打开并不意味着您已登录 Facebook。
会话需要在相关网站中打开,这意味着您应该在您的网站中添加一个“与 facebook 连接”按钮并单击它!然后重新加载页面,你会得到你的会话:)
$session = $facebook->getSession();
$me = null;
if ($session)
try
$uid = $facebook->getUser();
$me = $facebook->api('/me');
$friends = $facebook->api('/me/friends'); //array of friends - for every friend you get id & name
catch (FacebookApiException $e)
error_log($e);
【讨论】:
我只想获取朋友的列表,也许像旧 API 一样获取照片缩略图。那么这些会话不需要吗?谢谢。 需要。我将编辑我的代码以获取朋友的示例,但请记住,您必须实现登录按钮才能获得会话。 所有那些让你点击“允许(授权)”然后下次你去apps.facebook.com/someapp的应用程序,它只会启动应用程序并能够获取你的好友列表等,不需要我们点击登录按钮?【参考方案2】:$session = $facebook->getSession();
当您使用新的图形 api 调用它时,它说该方法不存在。
致命错误:调用 /home/pri 中未定义的方法 Facebook::getSession()...
【讨论】:
以上是关于无法获得与 Facebook 应用程序的会话? (使用它的 Graph API)的主要内容,如果未能解决你的问题,请参考以下文章
为啥在ios中重新打开会话后无法访问facebook好友列表
Facebook iOS 上传视频“无法从访问令牌中检索会话密钥。”