【问题标题】:Facebook App Fatal error: Uncaught OAuthException:Facebook 应用程序致命错误:未捕获的 OAuthException:
【发布时间】:2012-11-24 23:21:27
【问题描述】:

首先我对用户进行身份验证并获得对 index.php 的权限,然后在验证用户身份后将其重定向到应用程序工作所在的 action.php。

我收到此错误

致命错误:未捕获的 OAuthException:必须是活动访问令牌 用于查询当前用户的信息。投入 /home/flysw4fr/public_html/event/facebook.php

这个应用在两年前运行良好,现在不再运行

这是我的 action.php 代码

    <?php

require_once('config.php');

if(!$_SESSION['init']){
    die;
}

unset($_SESSION['init']);

require_once('facebook.php');

$data = loaddata();
$facebook = new Facebook(array(
  'appId'  => $fbappid,
  'secret' => $appsecret,
  'cookie' => true,
));



$friendsdate = $facebook->api('/me/friends');
if($friendsdate && $friendsdate['data'] && count($friendsdate['data'])){
    $friends = array();
    foreach($friendsdate['data'] as $f){
        $friends[] = $f['id'];
    }

    sleep(3);

    $session = $facebook->getSession();
    $params = array('name' => $data['name'], 
                     'start_time' => $data['start_time'], 
                     'end_time' => $data['end_time'],
                     'description' => $data['description']);
    if($data['source']){
        $params['source'] = '@'.realpath('image/'.$data['source']);
        $facebook->setFileUploadSupport(true);
    }
    $result = $facebook->api('/me/events', 'POST', $params);

    sleep(4);
    $eid = $result['id'];

    $params = array(
        'access_token' => $facebook-> getAccessToken(),
        'eid' =>$eid,
        'api_key' => $fbappid,
        'uids'=> implode(',', $friends),
        'format'=>'json-strings',
        'personal_message'=> $data['personal_message']
    );

    $url = 'https://api.facebook.com/method/events.invite';
    $facebook->setFileUploadSupport(false);
    $result = $facebook->makeRequest($url, $params);
}

header('Location: '.$data['url']);

【问题讨论】:

  • Facebook::getSession 已过时。获取当前版本的 SDK,并根据它调整您的代码。
  • "此应用在 两年前运行良好,现在不再运行"。

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


【解决方案1】:

您应该认真更新您的代码并使用当前的 SDK 版本,或者您可以使用 opengraph。

Facebook::getSession 现在已经过时了,2 年前还没有。 (这个应用程序在两年前运行良好,现在不再运行了:-/)

【讨论】:

    猜你喜欢
    • 2012-07-11
    • 1970-01-01
    • 1970-01-01
    • 2014-07-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-10-06
    相关资源
    最近更新 更多