当浏览器重定向到新页面时,应该重用Facebook令牌还是重用Facebook会话



在使用facebook会话从网站与用户的facebook数据交互时,应该何时保留facebook会话,何时保留facebook令牌?

在特定页面上建立了facebook会话并将浏览器重定向到新页面后,应该保存并重复使用该会话,还是应该保存facebook令牌并根据该facebook令牌创建新的facebook会话?

这个?

$session = new FacebookSession($_SESSION['token']);

还是这个?

$token = $_SESSION['session']->getToken();

您没有指定应用程序的环境(画布、网站等),所以我做了很多假设,但是。。。

我只使用画布应用程序,在大多数情况下,当设置正确时,PHP SDK将为您处理所有这些(例如,如果用户从应用程序中打开一个新选项卡)。如果你需要在没有任何登录流的情况下向另一个页面发出请求(就像你所要求的那样),我只需保存访问令牌并从那里创建一个会话。每次用户登录我的应用程序时,我都会将他们的访问令牌保存到我的数据库中。当他们使用我的应用程序时,我可以使用上的访问令牌来调用用户没有交互但仍然可以获得我需要的FB信息的页面。过了一段时间,该代币就会过期,但当用户与我的应用程序交互时,我不必担心它们会过期,因为一旦他们在未来某个时间点再次登录,我就会获得一个新的代币。

因此,只需保存令牌并将其与用户ID匹配即可。然后使用该令牌在您需要的地方创建会话。如果您需要与用户注销应用程序后的信息进行交互,您可能需要延长生命访问令牌。

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

最新更新