所以我一直在寻找为程序创建REST API,我们允许一些用户使用Facebook登录。 当用户通过Facebook注册我的程序时,我需要生成一个用户配置文件,其中包含基本的个人信息(例如,姓名,姓氏等),然后还有特定的计划信息(例如职业选择)。
具体的节目信息显然会由用户手动输入,但个人信息可能直接来自Facebook 。
我在想我们可以展示一个"注册表格"具有必要的程序特定字段,然后个人字段ALREADY预先填写他们的Facebook个人信息(他们可以在必要时更改此信息)。
我的问题是: 当用户在我的程序中创建帐户时,我应该将他们的个人信息从Facebook存储到我的数据库中,还是每当我需要显示他们的个人信息时不断从Facebook检索他们的个人信息?
如果我将它存储在我的数据库中,我只是担心从长远来看会有过时的信息(例如,用户在Facebook上更改个人信息但未反映在我们的系统上)。我的程序应该始终与用户的FB帐户同步吗?
我们的主要目标是为我们的计划提供另一种登录方法。拥有客户端的个人详细信息根本不会影响程序的功能(仅用于用户查看其他用户的详细信息)。
答案 0 :(得分:0)
您绝对应该将Facebook中的个人信息存储在您的数据库中。
看一下documentation,您可以看到建议的工作流程是在初始注册短期访问令牌之后获取长期访问令牌。至于个人信息不同步,一旦该长期令牌到期(约60天),您需要刷新它(客户需要再次登录),此时您可以使用短期令牌还要更新数据库记录。