我们在我们的网站上使用“登录LinkedIn”,我们正在添加Facebook登录。我被要求弄清楚如何在用户登录后保持用户的信息更新(即使他们没有回到网站),我不确定这是否可行,或者我们能够花多少时间访问他们的个人资料信息。
如果用户登录并在一个月后更改了他的个人资料信息,即使他们没有再次登录,也可以知道它?我可以运行一个使用Facebook和LinkedIn API更新用户数据的cron作业吗?
答案 0 :(得分:2)
注意:以下答案仅与Facebook API有关(我之前从未使用过LinkedIn API,但我很确定答案可以简要介绍一下这个问题)。 强>
如果用户登录并在一个月后更改了他的个人资料信息,那就是它 即使他们不再登录也可能知道它?
是。可以稍后更改用户的个人资料信息,而无需再次登录。实际上,这取决于您愿意访问的信息的时间。如果它是公开可用的信息(不需要访问令牌),您可以轻松地从Facebook API获取它(假设您在用户首次登录时在应用程序中存储用户ID或用户名)你要。
但是,如果它是需要访问令牌的东西,那么您可能需要让用户再次登录(因为User Access Token expires within 2 hours)。您还可以生成Long Lived User Access Token,通常会在60天后到期。这意味着您可以在60天内从Facebook API请求用户的信息,而无需再次登录。
我可以运行使用Facebook和LinkedIn API进行更新的cron作业吗? 用户数据?
是。您可以使用您的应用程序创建一个Cron作业来获取更新的信息,就像我在您之前的信息的答案中提到的那样。 Facebook过去几年使用特殊offline_access
权限but it has been deprecated and cannot be used anymore提供类似的功能。
可以通过简单的Google搜索找到几种替代方法(例如:this post和this post),几乎所有方法都会讨论我刚才在上面的答案中提到的方法。有关为Facebook API创建Cron作业的更多信息,请查看answers to this post。
答案 1 :(得分:0)
基本上@Rahil很好地解释了你能做些什么。将短期访问令牌交换为长期访问令牌非常重要,理想情况是在注册过程中。
您可以查询/更新的信息取决于您在登录期间请求的权限,请参阅https://developers.facebook.com/docs/facebook-login/permissions/v2.0
之前未提及的功能是所谓的Realtime Updates
。在这里查看文档:{{3}}
基本上你需要设置一个可以访问Facebook的服务,然后FB会向这个服务发送一个请求,其中包含哪个用户更新了字段/连接的信息(实际数据/更改本身未发送)。然后,您需要使用此信息来形成Graph API请求并自行收集实际更改的数据。
请注意,并非Realtime Updates API可以访问和使用所有字段/连接。