9
In:This Question據說AFNetworking
在後臺自動照顧餅乾,但在Previous問題我問,我有問題保持會議上的服務器,這是在PHP中,當我登錄。一旦我關閉了(停止在Xcode中進行調試),應用程序又回到了會話中。答案是堅持餅乾,像這樣來解決這個問題:AFNetworking持久性曲奇餅自動
NSData *cookiesData = [[NSUserDefaults standardUserDefaults] objectForKey:@"User"];
if ([cookiesData length] > 0) {
for (NSHTTPCookie *cookie in [NSKeyedUnarchiver cookiesData]) {
[[NSHTTPCookieStorage sharedHTTPCookieStorage] setCookie:cookie];
}
}
這給了我一個應用程序崩潰,當我嘗試做這樣的事情。當我登錄我設置NSUserDefault像這樣:
[[NSUserDefaults standardUserDefaults] setObject:data forKey:@"User"];
//Then synthesize
這是錯誤的方式來使用它? NSHTTPCookieStorage甚至是我的問題嗎?謝謝。
請記住,在'NSUserDefaults'中存儲會話cookie是一個糟糕的主意,因爲它在應用沙箱中未加密存儲。考慮使用鑰匙鏈,而不是 – jackslash
它似乎與將它們存儲在網絡瀏覽器中一樣安全......或者我錯過了什麼? – Gazzini
由於某種原因,我無法得到這個工作。即使在[self loadCookies]中分析出的Cookie看起來有效,它也會導致崩潰。 'NSInvalidArgumentException',原因:' - [__ NSCFDictionary objectAtIndexedSubscript:]:無法識別的選擇器發送到實例 –