Есть ли у Google Chrome какой-то первичный ключ в базе данных файлов cookie?
Я пишу какой-нибудь сканер для файлов cookie Google Chrome, хранящихся в базе данных SQLite. У этого также есть возможность удалить куки, однако я не нашел никакого поля идентификатора. Наиболее похожим является creation_utc
У меня мало информации об этом, но я узнал, что это какая-то временная метка. Я хотел бы знать, является ли это значение уникальным или нет.
Мне это нужно, потому что при удалении некоторых файлов cookie я использую несколько полей, и это не оптимальный способ сделать это. Если creation_utc
уникален, удаление куки займет меньше времени.
3 ответа
По своему дизайну каждая комбинация домена и пути может иметь только один файл cookie с определенным именем. (Если сервер отправляет новый файл cookie, старый файл заменяется.)
Поэтому, даже когда у базы данных есть другой первичный ключ (как вы предлагаете в своем собственном ответе), я все равно чувствую, что домен и путь должны быть реальным первичным ключом.
Я нашел ответ. Я использовал запрос: PRAGMA table_info(cookies)
это дало результат всем столбцам, их типам и т. д. Один из атрибутов назывался pk
(основной ключ). Все столбцы были установлены в 0, но creation_utc
установлен в 1, поэтому это первичный ключ.
Похоже creation_utc
= UTC, когда был создан файл cookie. Так что нет, это не гарантирует уникальность.
Если вы просто хотите удалить куки для одного сайта, вы можете использовать этот ответ.