Разобраться с ошибкой загрузки cookie
Цена договорная
Есть некая функция, которая загружает куки используя библиотеку puppeteer-core
export const setCookies = async (page: Page, cookies: any[]) => {
try {
const client = await page.target().createCDPSession();
const items = cookies
.map((cookie) => {
const item = { ...cookie };
if (!item.value) item.value = '';
console.assert(!item.url, `Cookies must have a URL defined`);
console.assert(
item.url !== 'about:blank',
`Blank page can not have cookie "${item.name}"`,
);
console.assert(
!String.prototype.startsWith.call(item.url || '', 'data:'),
`Data URL page can not have cookie "${item.name}"`,
);
return item;
})
.filter((cookie) => cookie.name);
await page.deleteCookie(...items).catch();
if (items.length) await client.send('Network.setCookies', { cookies: items });
} catch (err) {
error(err)
}};
При импорте куки возникает исключение в catch блоке. Пишите в ЛС, вышлю все инфо
Ваша задача
1. Разобраться, что конкретно в этой куке не так
2. Реализовать возможность импорта таких кук, с обработкой ошибки
export const setCookies = async (page: Page, cookies: any[]) => {
try {
const client = await page.target().createCDPSession();
const items = cookies
.map((cookie) => {
const item = { ...cookie };
if (!item.value) item.value = '';
console.assert(!item.url, `Cookies must have a URL defined`);
console.assert(
item.url !== 'about:blank',
`Blank page can not have cookie "${item.name}"`,
);
console.assert(
!String.prototype.startsWith.call(item.url || '', 'data:'),
`Data URL page can not have cookie "${item.name}"`,
);
return item;
})
.filter((cookie) => cookie.name);
await page.deleteCookie(...items).catch();
if (items.length) await client.send('Network.setCookies', { cookies: items });
} catch (err) {
error(err)
}};
При импорте куки возникает исключение в catch блоке. Пишите в ЛС, вышлю все инфо
Ваша задача
1. Разобраться, что конкретно в этой куке не так
2. Реализовать возможность импорта таких кук, с обработкой ошибки
Отзывы
В заказе есть исполнитель
При переводе заказа из архивного в актуальный, текущий исполнитель будет снят с задачи.
Выберите тип сделки
С безопасной сделкой вы всегда сможете вернуть средства, если что-то пойдет не так. С простой сделкой вы самостоятельно договариваетесь с исполнителем об оплате и берете на себя решение конфликтов.