Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/38.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
Node.js 从“获取页面状态代码”;domcontentloaded";事件_Node.js_Puppeteer_Http Status Codes - Fatal编程技术网

Node.js 从“获取页面状态代码”;domcontentloaded";事件

Node.js 从“获取页面状态代码”;domcontentloaded";事件,node.js,puppeteer,http-status-codes,Node.js,Puppeteer,Http Status Codes,我目前正在尝试在触发Puppeter中的domcontentloaded事件后获取响应代码(例如200、404、403等)。我无法使用.goto(…)的响应,因为我的应用程序在运行时通过单击链接等多次重定向。是否有任何方法仅使用页面对象获取页面的状态代码?您可以使用而不是页面。goto,因为它们都返回解析为主资源响应的承诺。它还有waitUntil选项,因此您可以检查domcontentloaded事件。使用waitForNavigation: 如果有多个重定向,导航将使用最后一个重定向的响应进

我目前正在尝试在触发Puppeter中的domcontentloaded事件后获取响应代码(例如200、404、403等)。我无法使用.goto(…)的响应,因为我的应用程序在运行时通过单击链接等多次重定向。是否有任何方法仅使用页面对象获取页面的状态代码?

您可以使用而不是
页面。goto
,因为它们都返回解析为主资源响应的承诺。它还有
waitUntil
选项,因此您可以检查
domcontentloaded
事件。使用
waitForNavigation

如果有多个重定向,导航将使用最后一个重定向的响应进行解析

您可以这样使用它:

wait page.goto('https://www.google.com“,{waitUntil:'domcontentloaded'})
//航行
wait page.waitForSelector('input[name=“btnI”]”)
等待页面。评估(()=>document.querySelector('input[name=“btnI”]”)。单击()
//得到回应
const response=wait page.waitForNavigation()
console.log(response.status())
您可以使用而不是
page.goto
,因为它们都返回一个承诺,该承诺解析为主资源响应。它还有
waitUntil
选项,因此您可以检查
domcontentloaded
事件。使用
waitForNavigation

如果有多个重定向,导航将使用最后一个重定向的响应进行解析

您可以这样使用它:

wait page.goto('https://www.google.com“,{waitUntil:'domcontentloaded'})
//航行
wait page.waitForSelector('input[name=“btnI”]”)
等待页面。评估(()=>document.querySelector('input[name=“btnI”]”)。单击()
//得到回应
const response=wait page.waitForNavigation()
console.log(response.status())

嘿,谢谢你的回复。这肯定给我指明了正确的方向。很遗憾,我无法使用这个确切的实现,因为页面将以未知的间隔导航。我需要得到一个事件,一旦浏览器导航到另一个页面,它就会被触发。然后得到这个的状态。此导航可能在5秒后、20分钟后或有时永远不会发生。嘿,感谢您的回复。这肯定给我指明了正确的方向。很遗憾,我无法使用这个确切的实现,因为页面将以未知的间隔导航。我需要得到一个事件,一旦浏览器导航到另一个页面,它就会被触发。然后得到这个的状态。此导航可能在5秒后、20分钟后或有时从不发生。