即使授予publish_stream,是否还需要访问令牌?

时间:2013-04-22 05:57:43

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

我是facebook opengraph的新手并创建了facebook应用程序。我在Facebook开发了一个应用程序,并通过opengraph教程我插入了必要的元标记。私下测试应用程序,已授予“publish_stream”权限。即使用户已授予publish_stream权限,是否有必要获取用户访问令牌?如何获取用户令牌?

function Visit_Link()
{   
    $config = array();
    $config['appId'] = 'APP ID';
    $config['secret'] = 'APP SECRET';

    $facebook = new Facebook($config);
    $response = $facebook->api(
    'me/namespace:action',
    'POST',
    array(
            'website' => "WEBSITE",

        )
        );

    print_r($response);
}

显示的错误是Fatal error: Uncaught OAuthException: An active access token must be used to query information about the current user. thrown in

P.S我正在使用fb php sdk

1 个答案:

答案 0 :(得分:1)

是的,你确实需要访问令牌,一个长期居住的令牌(持续60天)。如果您使用图形api资源管理器令牌测试您的应用程序,那么在30分钟左右之后您将始终需要一个新的应用程序,因为它很短暂。使用this登录您的用户,因为它将始终返回一个长期访问令牌,您可以将其存储在数据库中以进行脱机访问(Facebook已弃用并引入了长期访问令牌)。