我有一个网站,用户可以在其中创建帐户并登录。这个网站存储在服务器上的数据库中。我还希望用户能够使用Facebook等登录,从而跳过帐户创建。我不知道如何将它结合起来并使其在数据库中保持持久性。这个用例有什么好的例子吗?
答案 0 :(得分:1)
让我们首先看看登录的工作原理。当用户第一次登录时,会为用户生成会话ID,并将其作为cookie 存储在用户的浏览器中(请注意,存在没有cookie存储会话ID的机制,但是让我们假设您需要一个简单的cookie)。
对于同一网站中其他页面的后续请求,cookie也会一起发送。使用此cookie(具有会话ID),可以识别唯一用户。
因此,在服务器端识别用户(在网络请求时)所需要知道的只是会话ID。
话虽如此,如果你想将facebook等包含在登录机制中,你需要做两件事:
我所指定的是关于如何实现您的要求的一般流程。如何执行此操作的机制将取决于您正在采用的服务器端技术(如ASP.NET,Ruby等)
此外,如果您的网站需要存储有关用户行为/用户活动的信息,您可能还需要检查通过FB登录的用户是否已存在于您的数据库中。如果不存在,您可以存储用户的脸书ID或其他内容,以便以后唯一标识用户。将此作为主键/用户ID,您可以存储用户活动(例如,如果用户购买产品,则在订单表中插入记录)。