addyosmani / addyosmani/critical

critical does not work with a remote browser

未关闭
#376 7 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看
enhancement help wanted
主要语言
JavaScript
星标
10.3k
派生
390
PR 合并指标
30 天内没有已合并 PR

描述

Running something like this doesn't work.
```js
const browser = puppeteer.connect({
browserWSEndpoint: 'ws://127.0.0.1:3000',
});

critical.generate({
src: 'https://www.google.com/',
penthouse: {
puppeteer: {
getBrowser: () => browser,
},
},
});
```

This results in an error.
```json
{
"errorMessage": "Protocol error (Page.navigate): Cannot navigate to invalid URL",
"errorType": "Error",
"stackTrace": [
"Error: Protocol error (Page.navigate): Cannot navigate to invalid URL",
"at Promise (C:\\Users\\user\\Projects\\project\\node_modules\\puppeteer-core\\lib\\Connection.js:185:56)",
"at new Promise ()",
"at CDPSession.send (C:\\Users\\user\\Projects\\project\\node_modules\\puppeteer-core\\lib\\Connection.js:184:12)",
"at navigate (C:\\Users\\user\\Projects\\project\\node_modules\\puppeteer-core\\lib\\FrameManager.js:119:39)",
"at FrameManager.navigateFrame (C:\\Users\\user\\Projects\\project\\node_modules\\puppeteer-core\\lib\\FrameManager.js:96:7)",
"at Frame.goto (C:\\Users\\user\\Projects\\project\\node_modules\\puppeteer-core\\lib\\FrameManager.js:407:37)",
"at Frame. (C:\\Users\\user\\Projects\\project\\node_modules\\puppeteer-core\\lib\\helper.js:111:23)",
"at Page.goto (C:\\Users\\user\\Projects\\project\\node_modules\\puppeteer-core\\lib\\Page.js:629:49)",
"at Page. (C:\\Users\\user\\Projects\\project\\node_modules\\puppeteer-core\\lib\\helper.js:111:23)",
"at loadPage (C:\\Users\\user\\Projects\\project\\node_modules\\penthouse\\lib\\core.js:54:30)",
"at Promise (C:\\Users\\user\\Projects\\project\\node_modules\\penthouse\\lib\\core.js:384:29)",
"at process._tickCallback (internal/process/next_tick.js:68:7)"
]
}
```
It tries to connect to `'file://C:\\Users\\user\\AppData\\Local\\Temp\\6df8ea397e6c2d676ff1b27a1e00f391\\79f06439b62759c632b77f71ef3d3cd0.html'`.

Would it somehow be possible to get this working using a remote browser? I'm running a headless chrome instance in a docker container which I let puppeteer connect to and it obviously can't connect to a local temp file.

贡献指南

打开贡献指南

评估

这个 Issue 还没有评估数据。

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。