gpt4 book ai didi

javascript - 拦截某个请求并得到它的响应(puppeteer)

转载 作者:行者123 更新时间:2023-12-01 16:04:30 29 4
gpt4 key购买 nike

一旦那个 puppeteer 转到某个 url,我希望它监听所有发出的请求,然后找到一个特定的请求并返回它的响应。响应应该是一个 json 对象。

我设法听取了所有请求并拦截了所需的请求,但我不知道如何得到它的响应。这是我的尝试:我收到错误 TypeError: Cannot read property 'then' of null .

有什么建议吗?

page.on('request',async(request)=>{
console.log(request.url())

if (request.url().includes('desiredrequest.json')){
console.log('Request Intercepted')
request.response().then(response => {
return response.text();
}).then(function(data) {
console.log(data); // this will be a string
alert(data)
});
}

request.continue()
})

最佳答案

由于响应可能尚未到达,更好的方法是监听 response事件并从中获取请求对象。

page.on('response', async(response) => {
const request = response.request();
if (request.url().includes('desiredrequest.json')){
const text = await response.text();
console.log(text);
}
})

关于javascript - 拦截某个请求并得到它的响应(puppeteer),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60579493/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com