协议错误(Network.deleteCookies):无效参数无法反序列化 params.name - BINDINGS:位置 X 处缺少必填字段

问题描述 投票:0回答:0

您好,我正在尝试为 puppeteer 设置一些 cookie,这样我就不必每次启动应用程序时都登录。但由于某些愚蠢的原因我无法设置它,无论我做什么,它都会向我抛出相同的错误。

这是我尝试过的:

await main_page.setExtraHTTPHeaders({
      'Cookie': process.env.SECRETCOOKIE
  });

问题是它仅适用于初始请求,而对于其他请求,它不会设置 cookie,因此我仍然未经授权。

main_page.on('request')
无法正常工作。

这是我的饼干:

[
  {
    name: '29bd58896df4f6b1cffb2262ba9ede2a',
    value: '2717086f555f480cdfsf5b0671ba9ddb131aff624a:4:{i:0;s:5:"24544";i:1;s:22:"efeefefsfsfsdfsdf";i:2;i:604800;i:3;a:1:{s:5:"title";s:22:"sfdsfsdfsdfsdfsdf";}}'
  },
  { name: 'dffsfsfs', value: 'b5rknd0edbnu9vmlofhh0cc7j2' }
]

我使用

cookie.parse
解析(它最初是一个字符串)

const tr = transformCookies(cookie.parse(process.env.SECRETCOOKIE));

并使用映射进行转换

function transformCookies(cookieObj)
{
    return Object.keys(cookieObj).map(key => {
        const url = new URL(process.env.MAIN_URL)
        return {
            name: key,
            value: cookieObj[key],
            // domain: url.host,
            // path: '/',
        }
    });
}

(我已经尝试过主机和域名,但仍然不起作用)

我还尝试将原始cookie从

cookie.parse
传递而不转换到setCookie,但它仍然不起作用。 所以错误是这样的:

ProtocolError:协议错误(Network.deleteCookies):无效参数无法反序列化 params.name - BINDINGS:位置 246 处缺少必填字段 (D:\桌面 盎司参数更改器 ode_modules\puppeteer-core\li

node.js cookies puppeteer setcookie
© www.soinside.com 2019 - 2024. All rights reserved.