请问 puppeteer 能不能 在 page goto 一个非标准 scheme 的 uri 时做 interception
代码如下,无法在page.on('request', xxx)
中监听到 request。 而是直接报错
const puppeteer = require('puppeteer-core');
const findChrome = require('./findChrome');
(async ()=>{
const { executablePath, type } = await findChrome({});
if (!executablePath) {
console.error('Could not find Chrome installation, please make sure Chrome browser is installed from https://www.google.com/chrome/.');
process.exit(0);
return;
}
const browser = await puppeteer.launch({
executablePath,
headless: false,
defaultViewport: null,
userDataDir: '.local-data',
});
let pages = await browser.pages();
let page = pages[0];
page.on('request', (request)=>{
console.log(request); // 👈 到达不了这里
request.continue();
});
page.on('requestfinished', (request)=>{
console.log(request);
})
await page.setRequestInterception(true);
try{
await page.goto('app://index.html');
}catch(err){
console.error(err);
}
})();
Error: net::ERR_ABORTED at app://index.html
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.