Удалено NSHTTPCookie возвращается, если приложение завершено

После использования некоторого кода, чтобы удалить все куки:

NSHTTPCookie *cookie;
    NSHTTPCookieStorage *storage = [NSHTTPCookieStorage sharedHTTPCookieStorage];
    for (cookie in [storage cookies]) {
        [storage deleteCookie:cookie];
    }

если вы продолжаете использовать приложение в течение определенного периода времени, куки остаются удаленными. однако, если вы немедленно закроете приложение, файлы cookie вернутся. Похоже, что какой-то механизм синхронизации файлов cookie работает недостаточно быстро, но об этом нет упоминания в документах HTTPCookieStore.

Как вы получаете куки, чтобы (надежно) остаться удаленным?

1 ответ

Решение

Я не думаю, что есть способ сделать это. Куки-файлы кэшируются перед отправкой в ​​класс NSHTTPCookie, и то же самое происходит, когда вы удаляете куки-файлы. Классу предписано удалять Cookies при выходе, но не будет, если приложение вылетает, поскольку оно не перехватывает соответствующее событие.

Другие вопросы по тегам