Mysql 登录后跟踪不同类型的用户

Mysql 登录后跟踪不同类型的用户,mysql,database,mobile,flex-mobile,Mysql,Database,Mobile,Flex Mobile,我正在使用flex mobile构建一个移动应用程序,它有两种用户:需要注册和登录的普通用户和可以使用Facebook帐户登录的Facebook用户。然后,每个用户都可以将一个视频添加到他的个人列表中,或从同一列表中删除一个视频。问题是,一旦普通用户和Facebook用户登录,我将如何区分他们,这样我就可以访问数据库并加载每个用户添加的视频列表。我的数据库包含3个表:常规用户表、Facebook用户表和视频表。使用Fb.getLoginStatus的响应对象,您可以识别从Facebook登录的用

我正在使用flex mobile构建一个移动应用程序,它有两种用户:需要注册和登录的普通用户和可以使用Facebook帐户登录的Facebook用户。然后,每个用户都可以将一个视频添加到他的个人列表中,或从同一列表中删除一个视频。问题是,一旦普通用户和Facebook用户登录,我将如何区分他们,这样我就可以访问数据库并加载每个用户添加的视频列表。我的数据库包含3个表:常规用户表、Facebook用户表和视频表。

使用Fb.getLoginStatus的响应对象,您可以识别从Facebook登录的用户。

要确定用户是否已验证您的应用程序,请执行以下操作:

FB.getLoginStatus(函数(响应){ 如果(response.status===“已连接”){ //用户已登录并已验证您的身份 //app和response.authResponse提供 //用户ID、有效访问令牌、签名 //请求,以及访问令牌的时间 //和签名的请求都将过期 var uid=response.authResponse.userID; var accessToken=response.authResponse.accessToken; }else if(response.status===“未授权”){ //用户已登录到Facebook, //但尚未验证您的应用程序 }否则{ //用户未登录到Facebook。 } });

响应对象

如果用户已验证了您的应用程序,则响应对象将如下所示:

{ 状态:“已连接”, 作者回复:{ accessToken:“…”, expiresIn:“…”, 签名请求:“…”, 用户ID:“…” } }

通过测试响应对象中是否存在authResponse对象,您可以确保用户已验证您的应用程序,并且您可以开始进一步调用Facebook API。如果authResponse对象不存在,则表示该用户未登录Facebook,或未授权您的应用程序

authResponse对象最有用的部分是用户ID(用户ID)和accessToken。访问令牌可用于代表该用户向Facebook API发出请求。userID是应用程序中用户的唯一标识符。


我假设那些添加视频的用户附加了某种类型的唯一用户标识符,该标识符完全独立于他们的登录方式。不是这样吗?如果是,;然后根据该唯一ID获取用户视频列表。如果不是这样;你必须解释得更多。每个普通用户都会有他唯一的自动递增id。每个facebook用户都是这样。每个用户(普通用户或facebook用户)都可以在他的列表中添加新视频;添加的每个视频都会有一个唯一的id作为主键。然后,我不理解这个问题。为什么你需要知道用户用来检索视频列表的登录类型?考虑这个例子:一个登录到应用程序的普通用户,现在我们需要从数据库中加载他个人的视频列表。问题是我如何告诉用户添加了哪些视频,这样我就可以在列表中重新创建他们的名字?当视频被创建时;同时保存创建它的用户的ID。这很可能是将用户的唯一ID作为外键放在视频表中。