我在facebook dev上找不到任何示例。还是在stackoverflow上,所以我需要发表我认为没有必要的帖子。

我有一个使用facebook JavaScript SDK登录用户的网站。
当我登录用户时,我使用

FB.login(), scope:{'email, offline_access'}


登录完成后,我获得了短暂的访问令牌并将其传递给:

https://graph.facebook.com/oauth/access_token?
    grant_type=fb_exchange_token&
    client_id=APP_ID&
    client_secret=APP_SECRET&
    fb_exchange_token=SHORT_LIVED_ACCESS_TOKEN


因此,我得到了寿命长的60天令牌作为响应。这是在服务器端完成的,我将新的持久令牌以及Facebook ID等保存在数据库中。

现在到我的问题。我想每天在特定时间使用访问令牌更新数据库中的用户数据,我已经读过了。但是我该怎么做呢?

我曾经在FB.login()之后这样做,但是现在当用户不登录时,我不知道如何使用我的持久令牌对FB.api进行调用?

FB.api(/me....)


问候,
克里斯托弗

最佳答案

当用户未登录时,由于必须同步/更新信息,因此必须使用服务器端交互。
您可以使用保存的Extended Access Token,并使用Facebook PHP SDK方法将其设置为setAccessToken()

$facebook->setAccessToken($extended_access_token);


之后,您可以调用$ facebook-> api(...)方法来执行您打算执行的任务。

10-06 04:14
查看更多