Facebook注册与Facebook登录,用户名和保存用户照片的问题



我有一个Web应用程序,它有自己的用户注册,只有少数用户。 唯一的必填字段是电子邮件、密码和用户名,它们必须是唯一的。 从长远来看,我仍然希望拥有自己的注册系统。

我想整合Facebook

,但我正在尝试弄清楚我是否应该整合Facebook注册或Facebook Login。 我有这些问题:

  1. 我已经开始集成Facebook Login,效果很好。 有了这个,我不仅可以使Facebook用户登录,而且如果他是第一次通过Facebook登录并且尚未通过我们的网站注册,我可以获得注册用户所需的所有信息。 为了简化注册,我不提示用户输入密码,但这意味着如果用户尝试直接登录我们的网站,我会告诉用户他必须通过 Facebook 登录登录。 因此,我质疑Facebook注册的必要性,它似乎比Facebook登录更复杂。 谁能告诉我为什么我应该整合Facebook注册?

  2. 我看到将Facebook登录或Facebook注册集成到我们现有的用户注册中的缺点是用户名。 我目前将用户的Facebook用户名复制到我们的数据库中。 但是,用户的Facebook用户名可能丢失或与我们现有用户的用户名重复,在这种情况下,我将不得不提示用户更改它。 那么,如果将来用户在Facebook上更改了他的用户名,会发生什么? 当用户下次通过Facebook登录时,我应该更改用户在我们网站上的用户名吗? 这里的最佳实践是什么? 我是否正确地假设,如果我不费心更改我们网站上的用户用户名,这不会成为问题?

  3. 然后,根据我们的要求,用户的Facebook用户名可能无效。 目前,我们要求用户名是字母数字和下划线,使用以下 reg 表达式:/^[\w]*$/但是,Facebook 允许句点,但不允许连续的特殊字符和可能我没有检测到的其他标准。 这意味着我应该使用与Facebook相同的有效性检查。 有谁知道Facebook的用户名的reg表达式?

  4. 我能够显示带有IMG标签和src= http://graph.facebook.com/facebook.id/picture 的Facebook用户的个人资料照片。 有谁知道如何将照片保存到我们的服务器上? 我们使用Javascript和PHP。

感谢您的帮助!

嘿,

我会尝试 1 个 1 解决你的观点

    Facebook登录
  1. 只是用户通过Facebook连接来登录您的网站的一种方式,正如您所说,他们没有密码,因为Facebook处理身份验证。但是,您可以在使用Facebook登录后将他们重定向到特定页面,并让他们输入密码以使用其帐户而无需连接到Facebook。Facebook注册插件更像是一种让用户在您的注册系统上注册的工具(尽管它确实支持成为您唯一的注册系统)。如果用户已经登录到Facebook,它通过预先填充您可能经常要求的许多字段(例如姓名等)来提供便利。您可以自定义以询问其他信息。这也意味着您可以为您的用户提供 1 份注册表,无论他们是否使用 facebook。

  2. 脸书用户名不应该丢失。他们的"名称"字段应该是我认为他们必须提供的用户名字和姓氏。我不认为它可以是空的。我实际上建议做的是我在第1点中提到的。允许用户通过 Facebook 进行连接,但随后会提示他们输入用户名作为登录流程的一部分或之后。然后,您可以针对当前数据库检查此数据库的唯一性。首先,您可以为他们分配一个first_last_timestamp或类似内容的用户名。这更有可能鼓励他们将用户名更改为他们想要的东西。如果您使用了注册插件,则可以轻松地在其中输入自己的"用户名"字段。那么用户是否在Facebook上更改其名称也没关系,因为他们仍然拥有您网站的唯一用户名。

  3. Facebook的用户名应该只是一个用户的名字和姓氏(尽管显然人们确实输入了随机的东西)。"name"字段是这些字段的组合,因此它们之间很可能有一个空格。您可以随时使用自己的正则表达式替换任何无效字符,用下划线替换空格等。

  4. 我不确定是否有任何平台策略会限制您将用户图片保存到您自己的服务器/数据库。我想问的是你为什么要这样做?根据我的经验,这更有可能改变,而不是他们的名字。因此,使用您网站的朋友群可能更有可能识别他们的朋友在Facebook上使用的个人资料图片。

最后,我想说的是,无论哪种方式连接他们的Facebook帐户,最好的一点都意味着您可以提供流畅的登录体验,这样用户就不必每次都登录。我自己的个人经验是,Facebook登录(在成功页面上使用您自己的集成代码)比注册插件更好。用户以这种方式连接到你的应用的步骤更少,他们不必填写表单。成功回调还意味着您仍然可以执行我上面提到的自定义用户名代码/流程,然后提示他们根据需要更改用户名。请记住,最好在注册时尽可能少地询问信息,因为用户更有可能以这种方式加入。

希望这有帮助!

最新更新