我最近开始使用 Spring-Social。
在我查看的所有示例中,都存在通过单击“与 Facebook 连接”的图像进行登录的过程,然后被重定向到您需要注册到您访问的实际网站的页面。
Stack-Overflow 是无需注册的完美示例,您只需单击一个按钮即可登录您的帐户并开始提问。如果您想注销并通过不同的提供商连接,您可以这样做,堆栈溢出将识别您(假设电子邮件地址是唯一标识符)。
我的问题是,为什么您实际上需要注册功能?
我最近开始使用 Spring-Social。
在我查看的所有示例中,都存在通过单击“与 Facebook 连接”的图像进行登录的过程,然后被重定向到您需要注册到您访问的实际网站的页面。
Stack-Overflow 是无需注册的完美示例,您只需单击一个按钮即可登录您的帐户并开始提问。如果您想注销并通过不同的提供商连接,您可以这样做,堆栈溢出将识别您(假设电子邮件地址是唯一标识符)。
我的问题是,为什么您实际上需要注册功能?
https://github.com/SpringSource/spring-social-samples/tree/master/spring-social-quickstart上的 Spring Social 快速入门示例是具有隐式注册的应用程序示例。没有注册页面,而是使用用户的 Facebook 个人资料数据来创建用户。(这实际上是处理应用程序定义的 SimpleConnectionSignUp,它被注入到 JdbcUsersConnectionRepository 中。)
Spring Social Canvas 示例是另一个这样做的示例,尽管它是针对 Facebook Canvas 应用程序的。
有许多方法可以为用户发挥作用,但大多数/全部都可以通过 ConnectionSignUp 接口的适当实现来解决。
实际上,在使用 spring social 登录时,您不会使用来自某些提供商(例如 Facebook)的会话。Spring Social 将尝试将您的社交帐户与一些本地应用程序帐户进行匹配。如果它找到匹配项,那么将在您的应用程序中创建一个本地会话。因此,您将对会话/用户配置文件有更多控制权:
对于网络应用程序,我认为他们可能需要比其他服务提供的更多的人员信息(例如有时无法从 Oauth api 获取电子邮件)