Есть ли способ получить доступ к файлам cookie из расширения Chrome? этот код
document.cookie.length
всегда возвращает - 0.
Есть ли способ получить доступ к файлам cookie из расширения Chrome? этот код
document.cookie.length
всегда возвращает - 0.
Это первый раз, когда я прочитал что-то действительно не так на этом сайте. Доступ к фактическим файлам cookie с расширением возможно с помощью INDEED.
вам просто нужны эти две вещи в вашем манифесте:
"content_scripts": [
{
"matches": ["http://*/*", "https://*/*"],
"js": ["cookie_handler.js"]
}
],
"permissions": [
"tabs",
"http://*/*",
"https://*/*"
],
ваш файл cookie_handler.js будет выполнен в том же контексте каждой страницы загрузчика /frame/iframe. попробуйте поместить туда одну строку:
alert(document.cookie);
и вы увидите:)
В настоящее время лучший (самый простой) способ получить файлы cookie сайта в расширении выглядит следующим образом:
chrome.cookies.get({ url: 'http://example.com', name: 'somename' },
function (cookie) {
if (cookie) {
console.log(cookie.value);
}
else {
console.log('Can\'t get cookie! Check the name!');
}
});
Итак, теперь вам не нужен контент script для этого, но не забудьте включить разрешения в манифест:
"permissions": [
"cookies",
"*://*.example.com/*"
]
Я сделал небольшую заметку о том, как это сделать, а также объясняет, как получить информацию о файлах cookie в фоновом режиме script.
https://vicinitysoftware.com/accessing-site-cookies-from-chrome.html
Если вы хотите манипулировать информацией о файлах cookie без необходимости посещать сайт (полезно для чего-то вроде FireFox TACO) вы в настоящее время не повезло. Похоже, Google работает над этим: недавно они добавили относительно полный обработчик файлов cookie в экспериментальный API: chrome.experimental.cookies
Надеемся, что это скоро закончит поддержку API.
Еще лучше, вы можете использовать HTML5 Localstorage:
localStorage.setItem("itemid", "hello" ); // write
value = localStorage.getItem("itemid"); // read
Если вы действительно хотели прочитать куки файлы любого сайта, который пользователь наблюдает, как писал Дэн, это невозможно, так как действительно могут быть плохие вещи.
Все, что вы можете получить со страницы, - это содержимое страницы DOM.