php - Facebook 验证访问 token 时出错 : Session has expired at unix time

标签 php facebook

我已经为我的网站用户集成了离线墙贴,这些用户已将他们的 FB 帐户与用户详细信息链接起来。我已将 FB-id、FB-Access token 存储在我的数据库中,并通过使用 PHP-SDK 库,我将 feed wall 发布集成到网站中。一切都很顺利,所有用户都可以在 Facebook 墙上收到消息。但今天所有的事情都白费了,因为它抛出了各种错误。我一直在寻找更多文档,但找不到此问题的确切相关解决方案。

我用于 FB-Wall 发布的代码行

             $usid=$pageinfo['user']['id_facebook'];
    $accestoken=$pageinfo['user']["facebook_accesstoken"];

        if($pageinfo['user']['user_fbtoken']=='1')

         $attachment =  array(
        'access_token' => $accestoken,
        'message' => "myTaste || real restaurant reviews, share your taste on myTaste",
        'name' => "My Favorite Restaurant is ".$business['name'].$business['location']['city']."-What is yours? ",
        'link' => $business['personal_url'],
        'description' => "", 
        'picture'=> "http://googima.com/images/mysite.gif"
        );  

        $facebook->api("/".$usid."/feed", "post",$attachment); 
    }

错误消息:

 Uncaught OAuthException: Error validating access token: Session has expired at unix time

 Uncaught OAuthException: (#210) User not visible thrown in /hsphere/local/home/mysite.com/include/3rdparty/facebook-php-sdk/src/facebook.php

进行此离线墙贴的主要想法是用户每次在网站上进行评论时不会要求登录 FB。它需要使用我们存储在用户表中的 FB 详细信息自动发布。

最佳答案

授予 publish_stream 权限后,无需 access_token。因此,即使没有有效的 session ,删除它并使用类似的东西也可以工作(只是一个例子):

$params =  array(
    'message' => "Test Message",
    'picture'=> "http://path/to/image.jpg"
);  
$post_id = $facebook->api("/$uid/feed", "post",$params);

有关更多信息,请参阅此 answer (编辑4)。顺便说一句,感谢 @zerkms 提供的此信息!

关于php - Facebook 验证访问 token 时出错 : Session has expired at unix time,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5827901/

相关文章:

php - 菜单不会阻塞

php - 无法确认 SES 退回的 Amazon SNS 订阅

Facebook Graph API 和 Insight 统计数据不匹配/不正确

Facebook 应用程序白名单流程

php - 允许在社交媒体上共享受密码保护的页面?

javascript - NaN 值在按下 Tab 键或存在 onclick 功能时自动输入

php - 直接从应用程序访问 MySQL 实际上有多不安全?

php - 如何在计算最多行的同时加入 SQL 表?

facebook - 如果我启用我的应用程序的迁移 "July 2013 Breaking Changes",则无法通过电子邮件搜索用户

Facebook JavaScript SDK : Login button not showing up