在facebook SDK中通过JQuery加载调用用户好友,出现一些错误


call user friend in facebook SDK via JQuery load and Had some Error

我想用Jquery ajax加载在facebook应用程序中显示FQL的朋友列表。我有成功加载用户的朋友列表,但有时有一些错误,像这样:致命错误:Uncaught oautheexception:必须使用Active访问令牌来查询当前用户的信息。我该如何处理这个错误?

这是我的javascript代码,我使用CodeIgniter:

$('#boyslist').load('friendslist/boyslist', function() { //some callback script });

$('#girlslist').load('friendslist/girlslist', function() { //some callback script });

This My Controller:

function boyslist($offset=0) {
    $data['friend_record'] = $this->Facebook_model->getfriendslist('male', 0);
    $data['boy_count']    = $this->Facebook_model->countAllFriends('male');
    $data['gender']        = 'male';
    $this->load->view('pages/v_malelist', $data);
}
function girlslist($offset=0) {
    $data['friend_record'] = $this->Facebook_model->getfriendslist('female', 0);
    $data['girl_count']    = $this->Facebook_model->countAllFriends('female');
    $data['gender']        = 'female';
    $this->load->view('pages/v_femalelist', $data);
}

This is My Model:

function getfriendslist($gender, $offset) {
    $pos = 0 + $offset;
    $limit = 10;
    return $this->facebook->api(
            array( 'method' => 'fql.query', 'query' =>
                " SELECT uid, name, pic, sex, relationship_status FROM user 
                    WHERE uid IN (SELECT uid2 FROM friend WHERE uid1=me()) and sex='".$gender."' order by name limit ".$pos.", ".$limit." " )
            );
}

谢谢。

我设法通过使用早期版本的facebook sdk来解决这个问题,所以看起来github上当前的sdk引入了这个问题。

我在Heroku上的php应用程序使用最新的FB sdk,它开始失败。幸运的是,我有一个近似。我在我的本地服务器上使用了一个月前的sdk,即使从Heroku,它仍然可以工作。

这个问题似乎只发生在AJAX从客户端加载