【发布时间】:2022-01-22 08:06:02
【问题描述】:
我想拦截多个请求,但找不到可行的解决方案。
- 中止对请求 1 的样式表和图像的所有请求
- 在循环中为请求 2 注入 POST 请求负载
据我所知,我只能有一个请求拦截器?!
目前我的拦截器正在循环中将有效负载拦截到 POST 请求中。
const siteResponse = await page.goto(siteUrl, { waitUntil: 'load', timeout: 0 });
...
for (var item of items) {
const payload = { prop: item };
await page.setRequestInterception(true);
page.once('request', request => {
request.continue({
'method': 'POST',
'postData': JSON.stringify(payload),
'headers': { ...request.headers()}
});
page.setRequestInterception(false);
});
const addItemResponse = await page.goto(addItemUrl, { waitUntil: 'load', timeout: 0 });
}
这很有效。但我无法拦截请求 1 以中止对样式表和图像的请求。
任何想法如何设计代码以拦截带有有效负载的循环中的请求并中止第一个请求的样式表和图像请求?
【问题讨论】:
标签: javascript puppeteer