我在哪里可以找到一个很好的详细教程,使用sskeychain来存储和检索用户名和密码,并在UIWebView中进行基本身份验证?其次,就基于Web的应用程序存储和使用身份验证所需的方法而言,我是否在正确的轨道上? (见下面的解释 . )
我找到了一些使用不同方法的教程:
根据以下其他SO问题的建议,建议使用sskeychain以便更轻松地使用钥匙串来存储身份验证参数 .
-
https://stackoverflow.com/questions/8381072/save-username-and-password-for-url-like-gmail-com-iphone
我的计划是在钥匙串在设备上本地存储用户名和密码的建议,并使用基本身份验证到我的PHP代码连接了一个UIWebView . 是否有经验丰富的iOS开发人员推荐的有关用户身份验证主题的xcode / Obj-C新手的详细分步教程?
Apple文档似乎不太有用 . 它既可以是简单的销售术语,也可以是方法和参数的头部描述,没有很多有用的例子 .
Update:
我最后只使用NSUserDefaults在本地存储用户名和密码,然后使用AFNetworking库进行身份验证 . 如果这些是不明智的,我会欢迎一个答案,为更好的方法提供指导 .
3 回答
如果您想进行基本身份验证,最好使用AFNetworking等网络服务 . 他们所有你创建一个webclient,传递用户名/密码组合,他们负责其余的工作 .
此链接显示您需要调用的确切方法调用:http://engineering.gowalla.com/AFNetworking/Classes/AFHTTPClient.html#//api/name/setAuthorizationHeaderWithUsername:password:
还有一个大型社区和大量开发人员在所有类型的iOS项目中使用AFNetworking的例子 .
使用AFNetworking进行身份验证并调用服务器非常棒!不过,我会强烈建议您不要从存储
NSUserDefaults
凭据(用户名和密码),因为内容存储在一个plist中作为纯文本,并且可以仅仅通过将设备插入到Mac读取 . 我建议您查看these other questions和great post of a well-known case以获取有关该主题的更多详细信息 .你是正确的
Keychain
并使用SSKeychain简单快捷 . 你可以在how to use SSKeychain to locally store the credentials找到这个好例子 .我建议你使用
Lockbox
它重量轻,与ARC配合使用,易于使用 .