我根据https://developers.facebook.com/docs/facebook-login/manually-build-a-login-flow/为facebook登录 Build 了自定义登录流程...
如果access_token检索(访问令牌的交换代码)成功(没有GET错误),是否可以将用户视为facebook-valid-user-logged-in?
facebook access_token是用户独有的东西以及只能“由用户生成”的东西吗?
或者我应该尝试使用该access_token检索用户信息,并在成功检查后(它有权限请求的信息,例如电子邮件),然后才认为他是facebook-valid-user-logged-in?
PS:我不想使用Facebook PHP-SDK
1 回答
如果您要求不使用官方SDK,那么我会说您应该通过查询
/me
来验证您检索的令牌 .这是确保您处理有效令牌的最佳方式,因为当您将其用于请求时,Facebook会对其进行验证 .
如果您使用的令牌无效,您将收到与此类似的回复:
每个应用程序的用户访问令牌对于每个用户 and 是唯一的 . 每个应用程序将为同一用户返回不同的令牌 .
应用程序访问令牌对于每个应用程序都是唯一的,并且不需要向Facebook请求任何请求 - 它们只是app_id和app_secret之间的串联:
app_id|app_secret
as mentioned in the documentation: