puppeteer - 是否有一个标志可以禁用 chromium 中的子资源完整性检查?

标签 puppeteer chromium playwright

我们正在使用 puppeteer有时 playwright运行一些集成测试。我们模拟了一些目标页面的脚本依赖项,这会导致 subresource integrity哈希不匹配。

Failed to find a valid digest in the 'integrity' attribute for resource 'http://localhost:3000/static/third-party/adobe-target/at-js/2.4.0-cname/at.js' with computed SHA-256 integrity '47DEQpj8HBSa+/TImW+5JCeuQeRkm5NMpJWZG3hSuFU='. The resource has been blocked."

有没有办法通过标志或配置属性禁用完整性哈希检查?

最佳答案

没有。我认为唯一的方法是从加载脚本的源中修复或删除 integrity 属性。

查看 chromium(或闪烁)源,unless the integrity attribute is empty , FetchManager::Loader 将实例化 SRIVerifier ,其构造函数调用其 OnStateChange方法,其中对于 basiccorsdefault 的响应类型(省略 opaque 响应和错误),SubresourceIntegrity::CheckSubresourceIntegrity叫做。 Unless the parsing of the integrity attribute fails , SubresourceIntegrity::CheckSubresourceIntegrityImpl将成功验证其中一个摘要,否则将失败并显示给定的错误消息。没有沿此路径检查配置选项来覆盖失败的检查。

关于puppeteer - 是否有一个标志可以禁用 chromium 中的子资源完整性检查?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69470528/

相关文章:

javascript - querySelector 不适用于 puppeteer 中的子元素

google-chrome-extension - 私下发布 google chrome 扩展

node.js - Playwright - 无法使用文件 ://in an img tag 访问本地文件

google-chrome - 如何关闭chrome浏览器自动更新

javascript - jQuery:还有另一种解决方案吗?

javascript - E2E Playwright (JS, TS) : how can i wait a loader disappear when have more than 1 element on page? 需要等待所有元素

python - 在 Python 版剧作家中,如何获取与 ElementHandle 相关的元素( child 、 parent 、祖 parent 、 sibling )?

google-chrome - Websocket 与多个 Chrome Docker 容器的通信

javascript - 如何使用 Puppeteer 保持 Chromium 打开?

javascript - 如何在 node js 中使用 puppeteer 滚动页面 5 分钟(如果之前完成则更短)?