Facebook access_token为每个用户

时间:2014-03-23 23:59:10

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

我的问题是:

为什么我们必须为数据库中的每个用户存储可过期的access_token,我们可以使用 APP_ID|APP_SECRET
在用户允许我们的应用发布到他的墙后,access_token为<{1}}?

提前谢谢。


我找到了一些重要信息:

https://developers.facebook.com/docs/facebook-login/access-tokens/

2 个答案:

答案 0 :(得分:0)

您不必将access_token存储在数据库中。您可以在用户打开应用时随时抓取它。

var accessToken;

FB.Event.subscribe('auth.login', function (response) {


if (response.status === 'connected') {

    accessToken = response.authResponse.accessToken;

} else if (response.status === 'not_authorized') {

       FB.login();
} else {

       FB.login();
}
});

这样,每当他们使用该应用时,令牌都是最新的,并且他们授予您的应用的任何权限都将被转移到当前会话。

答案 1 :(得分:0)

您在用户的墙上发帖并不需要用户访问令牌应用访问令牌可用于此目的。

但事实是,App访问令牌的权力非常有限。对于发布它的罚款,但对于其他API调用(几乎所有其他调用),您需要一个活动的用户访问令牌来查询用户。在那里,您不能只使用App访问令牌并拨打电话。