Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/286.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 在依赖Auth0进行Facebook身份验证的应用程序中选择用户ID?_Php_Angularjs_Auth0 - Fatal编程技术网

Php 在依赖Auth0进行Facebook身份验证的应用程序中选择用户ID?

Php 在依赖Auth0进行Facebook身份验证的应用程序中选择用户ID?,php,angularjs,auth0,Php,Angularjs,Auth0,我正在使用Angular和PHP创建一个TODO列表应用程序 我使用Auth0来允许Facebook身份验证,在该过程完成后,用户将被重定向到addtodo页面。然而,我对如何在MySQL数据库中保存TODO项感到困惑。我应该使用哪个用户ID保存TODO项目 作为回报,我获得了Facebook用户ID;我可以使用FB用户ID保存它吗?您可以,但是,如果您使用Facebook ID作为内部方式来识别MySQL数据库中的用户,则会降低应用程序更改的灵活性 例如,您将Facebook ID保存在一列中

我正在使用Angular和PHP创建一个TODO列表应用程序

我使用Auth0来允许Facebook身份验证,在该过程完成后,用户将被重定向到addtodo页面。然而,我对如何在MySQL数据库中保存TODO项感到困惑。我应该使用哪个用户ID保存TODO项目


作为回报,我获得了Facebook用户ID;我可以使用FB用户ID保存它吗?

您可以,但是,如果您使用Facebook ID作为内部方式来识别MySQL数据库中的用户,则会降低应用程序更改的灵活性

例如,您将Facebook ID保存在一列中,其中的数据类型支持Facebook ID格式。现在想象一下,在两个月内,你还想支持谷歌用户

Google ID的格式可能是您选择的数据类型不支持的,因此您需要进行更改。此外,谷歌和Facebook的标识符可能不是全局唯一的,因此谷歌可以使用相同的标识符来表示用户A,而在Facebook上,它用于表示用户B

您最好将数据与您管理的内部标识符关联起来保存,并将其映射到全球唯一的方式来识别您的用户;例如电子邮件地址


如果您使用的是Auth0,您可以利用它为您提供的。这意味着您以后可以支持新的用户身份验证方法,Auth0将始终为您的应用程序提供一个全局唯一的ID,即使在用户无需提供电子邮件地址即可进行身份验证的情况下也是如此。

@Angelo Great,这就是我要寻找的答案。因此,当用户登录到系统时,我将保存该数据,然后使用唯一标识符ie电子邮件保存数据。当我使用auth0时,每次用户登录到我的系统时,它都会为我提供相同的唯一标识符。