我正在处理iOS和Android应用程序的Web服务,并需要开发一个社交媒体登录服务。
该应用需要支持Twitter、Facebook、LinkedIn和Google Plus的登录。
作为参数,我接受来自社交网站的用户ID和此ID来源的网站以及基本用户信息,如名字、姓氏和电子邮件。
以下是相关表的结构
用户表
用户ID | 电子邮件 | 设备ID | 名字 | 姓氏 | 密码
用户ID是主键,电子邮件是唯一的
用户社交媒体表
用户ID | 网站 | 令牌
当我从前端获取这些信息时,我首先检查社交用户ID是否已经存在。如果社交ID不匹配,则检查电子邮件是否存在于数据库中。如果电子邮件不在数据库中,则注册新用户。
现在的主要问题是,Android和iOS的Twitter SDK不返回电子邮件,即使用户通过电话注册,Facebook也不会返回电子邮件,因此我在我的端上无法唯一标识用户。我已经搜索了很多但找不到任何解决方案。
请纠正我在任何地方错误的做法,并建议我如何处理电子邮件问题。