iOSアプリケーションでNSHTTPCookieStorage
を使用してURLから取得したCookieを管理する予定です。アプリケーションの実行時にCookieを管理することを理解しています。しかし、アプリケーション終了後にクッキーを保持することが可能かどうかは疑問でした。そして、アプリが再び開かれたら、それらのクッキーをもう一度読んでください。 NSHTTPCookieStorage
はアプリケーション間でクッキーを使用していますか?または、アプリケーションランタイムの間だけ?これらのCookieを保持するには、CoreData
を使用する必要がありますか?iOSアプリケーションでのCookieの永続化
50
A
答えて
44
アプリが読み込まれたときにCookieを再設定する必要があります。私はこのようなコードを使用しています:
NSData *cookiesdata = [[NSUserDefaults standardUserDefaults] objectForKey:@"MySavedCookies"];
if([cookiesdata length]) {
NSArray *cookies = [NSKeyedUnarchiver unarchiveObjectWithData:cookiesdata];
NSHTTPCookie *cookie;
for (cookie in cookies) {
[[NSHTTPCookieStorage sharedHTTPCookieStorage] setCookie:cookie];
}
}
これはうまく動作します。
103
他の回答に示唆されているように、クッキーを自分自身で維持する必要はありません。 NSHTTPCookieStorage
はあなたのためにクッキーを保持しますが、クッキーの有効期限がサーバ側で設定されていることを確認する必要があります。
有効期限のないCookieは「セッションのみ」とみなされ、アプリを再起動すると消去されます。 「セッションのみ」の状況は、BOOLプロパティNSHTTPCookie
で確認できます。これは標準的なCookieであり、iOS固有のものではありません。
関連する問題
- 1. iOS Safari/ChromeのCookie永続性
- 2. iOS向け永続アプリケーション
- 3. Azure B2C永続Cookie
- 4. WKWebView Cookieの永続的ストレージ
- 5. MVCでCookieが永続化されていない
- 6. iPhoneのWebビューのCookieの永続性
- 7. GUIDと永続的なCookieのmd5ハッシュ
- 8. iOSアプリケーションとRails Webサービスとの永続的な接続
- 9. の永続化データ
- 10. iOS Swift - シングルトンデータの永続性
- 11. iOS永続ストアの問題
- 12. Android/iOS永続データストレージ
- 13. PythonセッションCookieが永続しない
- 14. Asp.netコア永続認証 - カスタムCookie認証
- 15. コアデータの永続性アプリケーション
- 16. Orbeon:Oracleの永続化層
- 17. Netbeansの/永続化APIエラー
- 18. Igniteの永続化移行
- 19. オブジェクトの永続化を
- 20. の永続化OneToMany関係
- 21. WCFワークフローサービスの永続化の有効化
- 22. EhCacheディスクの永続性 - 任意のオブジェクトを永続化する
- 23. レールでのmemcacheセッションの永続化
- 24. ASP.NETのポストバック間でデータの永続化
- 25. Rubyでのツリーデータ構造の永続化
- 26. iOS永続ストレージ戦略
- 27. TempData 1つのページに永続的に永続化する
- 28. Java Webアプリケーションでの永続キャッシュ?
- 29. 私のアプリケーションを永続化する方法
- 30. PythonでPythonの永続化ログファイルストリーム
「MySavedCookies」は既にそこにありますか?それとも、私のアプリが非アクティブになるのを待たなければならないのですか? – Alex
あなたは自分でそれを保存する必要があります - それは私が私のものを保存する場所です。 – Magnus
ユーザーのデフォルトでクッキーを保存することは、iFunBoxなどのツールを使ってすべてのplistにアクセスできるため、セキュリティ上の欠陥になる可能性があります。 これらは暗号化する必要がありますが、最良の動作は@gazreeseの回答に従うことです。 –