Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/240.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
iOS+;PHP登录最佳实践_Php_Iphone_Objective C_Authentication_Login - Fatal编程技术网

iOS+;PHP登录最佳实践

iOS+;PHP登录最佳实践,php,iphone,objective-c,authentication,login,Php,Iphone,Objective C,Authentication,Login,我正在构建一个从我的服务器访问MySQL数据库的应用程序,我正在从应用程序发送数据并从服务器接收PHP响应。我正在尝试使用此数据库为此应用程序创建登录系统 过程是什么?构建此应用程序的最佳实践是什么?您必须在应用程序中存储某种会话值,并将其与您的请求一起发送。您可以利用PHP会话来实现这一点,但我通常更喜欢为API键创建数据库条目。成功登录后,将为该用户生成API密钥并存储在设备上。然后,在每个请求上,您都将在服务器端传递用户名/api密钥组合以进行身份验证。如果您希望将代码库扩展到androi

我正在构建一个从我的服务器访问MySQL数据库的应用程序,我正在从应用程序发送数据并从服务器接收PHP响应。我正在尝试使用此数据库为此应用程序创建登录系统


过程是什么?构建此应用程序的最佳实践是什么?

您必须在应用程序中存储某种会话值,并将其与您的请求一起发送。您可以利用PHP会话来实现这一点,但我通常更喜欢为API键创建数据库条目。成功登录后,将为该用户生成API密钥并存储在设备上。然后,在每个请求上,您都将在服务器端传递用户名/api密钥组合以进行身份验证。如果您希望将代码库扩展到android/blackberry/toaster烤箱,此方法将很容易移植。它构成了一个非常可移植的身份验证系统。此外,这使您不必在设备上存储密码,这是一个安全问题


一个程序员就是这样选择的。

我在考虑在MySQL上创建一个会话表,当登录返回成功时,我将用户名和令牌存储在那里,并将相同的信息存储到应用程序的.plist文件中。因此,每次加载应用程序时,我都会进行此验证以加载欢迎页面或登录页面。好吗?听起来不错。我还需要每个请求的用户名和令牌。这样,如果需要的话,访问权限可以立即被撤销。我做到了,而且效果很好。现在我的疑问是:当设备没有互联网连接时(celular、wifi…),我该怎么办?显然,你不必担心发出请求。您只需在本地缓存一些信息。