Vit*_*dur 4 webautomation node.js puppeteer
是否可以禁用特定 mime 类型的下载。例如,导航到默认情况下将下载 zip 存档的 URL 不应执行任何操作。
编辑:
我事先不知道什么 url 将被访问以及什么将返回该 url。
对我有用的解决方案:
const client = await page.target().createCDPSession();
// intercept request when response headers was received
await client.send('Network.setRequestInterception', {
patterns: [{
urlPattern: '*',
resourceType: 'Document',
interceptionStage: 'HeadersReceived'
}],
});
await client.on('Network.requestIntercepted', async e => {
let headers = e.responseHeaders || {};
let contentType = headers['content-type'] || headers['Content-Type'] || '';
let obj = {interceptionId: e.interceptionId};
if (contentType.indexOf('application/zip') > -1) {
obj['errorReason'] = 'BlockedByClient';
}
await client.send('Network.continueInterceptedRequest', obj);
});
Run Code Online (Sandbox Code Playgroud)
这段代码阻止导航到将下载 zip 存档并传递其余请求的 URL。
感谢 @hardkoded 建议访问github.com/GoogleChrome/puppeteer/issues/1191。
| 归档时间: |
|
| 查看次数: |
2577 次 |
| 最近记录: |