Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ms-access/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 木偶演员,聆听网络反应变化_Javascript_Puppeteer - Fatal编程技术网

Javascript 木偶演员,聆听网络反应变化

Javascript 木偶演员,聆听网络反应变化,javascript,puppeteer,Javascript,Puppeteer,我正在使用木偶演员api() 用于自动化测试 我想听所有的http响应,需要每个响应的url和响应数据 我尽量使用page.on('response')函数: page.on('response', response => { response.text().then( textBody=> { const req = response.request();; console.log(req.url())

我正在使用木偶演员api() 用于自动化测试

我想听所有的http响应,需要每个响应的url和响应数据

我尽量使用page.on('response')函数:

 page.on('response', response => {
      response.text().then( textBody=> {
             const req = response.request();;
             console.log(req.url())
             console.log(textBody)
      });
})
是否应在“waitForSelector”函数中进行扭曲,以具有数据就绪的标志

我试着这样做

问题是有时我看不到任何console.log,有时我看到了

我很高兴知道我做错了什么?

无需调用,除非您试图获取匹配请求对象的URL

以下解决方案可以很好地工作:

page.on('response', response => {
  console.log('Response URL:', response.url());

  response.text().then(data => {
    console.log('Response Text:');
    console.log(data);
  });
});
如果仍然存在问题,可能是因为相关请求失败

您可以通过侦听事件并记录结果来检查此错误:

page.on('requestfailed', request => {
  console.log('Failed Request URL:', request.url());
  console.log('Failed Request Error Message:', request.failure().errorText);
});

响应
事件是,因此您不需要等待任何东西。你的代码看起来不错;没有更多的背景,很难说问题是什么。当您没有看到
控制台.log
时,您如何知道收到了响应?尝试为添加侦听器。