jjzjj

KeyChainWrapper

全部标签

ios - 存储用于离线身份验证的 token

我正在开发一个需要用户登录才能使用的应用程序。用户应该只能在连接到Internet时才能登录。当用户登录时,token应存储在设备上,允许离线使用应用程序而无需再次登录。我基本上想检查此token是否存在,如果存在则将用户带到应用程序,否则将用户带到登录屏幕。此外,此token应在一段时间后过期。问题是是否有一种方法可以存储token,该token将在比方说24小时后过期,而用户无法篡改它或以任何方式欺骗系统(例如,如果token带有时间戳并且用户更改了设备时间)。token应该在用户未连接到Internet的情况下过期,这样用户将无法永远使用该应用程序,除非每隔一段时间重新进行身份验

iphone - IOS中keychainWrapper中存放NSArray或NSDictionary

keychainWrapper提供存储NSString(如密码)的机制。我还可以将NSArray或NSDictionary存储在keychainWrapper中吗? 最佳答案 您可以使用NSKeyedArchiver和NSKeyedUnarchiver,如果您有自定义对象存储在字典数组中,请确保该类实现了NSCoding协议(protocol)。NSData*encodedData=[NSKeyedArchiverarchivedDataWithRootObject:array];然后您可以使用base64编码将NSData转换为N