如何禁用 puppeteer 中的缓存?

新手上路,请多包涵

我想在 puppeteer 中禁用缓存,谁能告诉我该怎么做?我找到了这个 page.setCacheEnabled(enabled) 但我不明白如何使用它。

我知道浏览器启动时没有缓存或 cookie,但在我的情况下,浏览器始终在后台运行,因此需要不同的解决方案。

原文由 Nagarjun Prasad 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 1.4k
2 个回答

根据人偶文档,您可以使用 await page.setCacheEnabled(enabled)

这是在 12 月添加的。 请参阅 Git Hub 问题 #1609

如果您查看 提交更改,则会有一个测试,例如

await page.goto(SOMEURL);

await page.reload({waitUntil: 'networkidle2'});
expect(responses.get('one-style.css').fromCache()).toBe(true);

await page.setCacheEnabled(false);
await page.reload({waitUntil: 'networkidle2'});
expect(responses.get('one-style.css').fromCache()).toBe(false);

原文由 Rippo 发布,翻译遵循 CC BY-SA 3.0 许可协议

如果您想要会话隔离,还有: const context = await browser.createIncognitoBrowserContext(); const page = await context.newPage(); 这将使您在每个页面上都有一个全新的开始。

原文由 reflog 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题